From cba34f9f8455f22e8a43c603b702b611020fddc4 Mon Sep 17 00:00:00 2001 From: b4b4r07 Date: Thu, 2 Mar 2017 17:10:30 +0900 Subject: [PATCH] Remove debug option --- README.md | 2 -- docs/README_ja.md | 2 -- docs/spec_ja.md | 11 +++++++++-- main.go | 12 +++++++----- 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 839607f..2d8f04c 100644 --- a/README.md +++ b/README.md @@ -14,8 +14,6 @@ Usage of ./qiita2crowi: Crowi's access token -crowi-url string Your Crowi base URL - -debug - Logging verbosely -page-path string Default page path (default "/qiita") ``` diff --git a/docs/README_ja.md b/docs/README_ja.md index d543536..0403714 100644 --- a/docs/README_ja.md +++ b/docs/README_ja.md @@ -14,8 +14,6 @@ Usage of ./qiita2crowi: Crowi's access token -crowi-url string Your Crowi base URL - -debug - Logging verbosely -page-path string Default page path (default "/qiita") ``` diff --git a/docs/spec_ja.md b/docs/spec_ja.md index e019a0c..893d103 100644 --- a/docs/spec_ja.md +++ b/docs/spec_ja.md @@ -6,11 +6,14 @@ Spec - このツールを使うにあたり、Qiita:Team にある記事を Dumping した JSON ファイルが必要です - Qiita:Team では記事のエクスポート機能があるのでそれを使ってください - その JSON ファイルを標準出力から食わせると、パースしてよしなに Crowi API に投げてくれます - - 実行すると、 +- 実行すると、 - まずは記事を作成します - そのとき JSON にある title 要素が Crowi の記事のパスとして使われます - `qiita2crowi` の `-page-path` オプションを使えばその記事の root path を設定できます (default: `/qiita`) - - title にある `^`, `$`, `*`, `%`, `?`, `/` は全角に置換されます + - title にある以下の文字は全角に置換されます + - `^`, `$`, `*`: Crowi 内で正規表現として使用される + - `%`, `?`: クエリ + - `/`: ページパス (予期しない階層化を防ぐため) - Qiita 記事についているコメントは本文末尾に追記される形になります - 次に、画像をアップロードします - Qiita からアップロードされた画像ファイルは `qiita-image-store.s3.amazonaws.com` というホスト名の URL を持ちます @@ -22,6 +25,10 @@ Spec - 4 つの goroutine を起動して並列に処理します - 最適化用のオプションなどは提供していません +### 未実装 + +- ページ内リンク (Qiita:Team 参照のもの) の書き換え + ## 参考 - [Qiita::Team やめた - @kyanny's blog](http://blog.kyanny.me/entry/2015/07/30/020046) diff --git a/main.go b/main.go index f364f2c..ee1abf8 100644 --- a/main.go +++ b/main.go @@ -4,6 +4,7 @@ import ( "encoding/json" "flag" "fmt" + "log" "os" "regexp" "strings" @@ -16,7 +17,6 @@ var ( ) var ( - debug = flag.Bool("debug", false, "Logging verbosely") accessToken = flag.String("access-token", "", "Crowi's access token") crowiUrl = flag.String("crowi-url", "", "Your Crowi base URL") pagePath = flag.String("page-path", "/qiita", "Default page path") @@ -25,26 +25,28 @@ var ( func main() { flag.Parse() - dec := json.NewDecoder(os.Stdin) var q Qiita + dec := json.NewDecoder(os.Stdin) dec.Decode(&q) wg := sync.WaitGroup{} - hasError := false + errs := 0 for _, article := range q.Articles { wg.Add(1) go func(a Articles) { err := qiita2crowi(a) if err != nil { - hasError = true + log.Printf("[ERROR] %s", err.Error()) + errs++ } wg.Done() }(article) } wg.Wait() - if hasError { + if errs > 0 { + log.Printf("Failures %d/%d pages", errs, len(q.Articles)) os.Exit(1) } }