Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
dev.toの記事もGitHubで管理してみた
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
YouYou
May 14, 2022
Technology
0
2.3k
dev.toの記事もGitHubで管理してみた
詳細ブログ↓
https://zenn.dev/yuta28/articles/dev-github-vscode
YouYou
May 14, 2022
Tweet
Share
More Decks by YouYou
See All by YouYou
AWSマネコンに複数のアカウントで入れるようになりました
yuhta28
2
270
今インフラ技術をイチから学び直すなら
yuhta28
1
270
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
3
650
Datadog外形監視基盤をEC2から ECSへ移行してみた
yuhta28
0
1.7k
アウトプット頑張ったら企業からLT登壇の依頼がきた話
yuhta28
1
1.8k
小さなことから始めるAWSコスト最適入門
yuhta28
1
1.3k
Datadogのコストも監視しよう
yuhta28
1
1k
Rcloneを使った定期的なストレージ同期
yuhta28
0
800
Pulumiを触ってみよう
yuhta28
1
2.6k
Other Decks in Technology
See All in Technology
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
170
マネージャー視点で考えるプロダクトエンジニアの評価 / Evaluating Product Engineers from a Manager's Perspective
hiro_torii
0
190
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
5.6k
Red Hat OpenStack Services on OpenShift
tamemiya
0
140
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
340
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
270
AI駆動開発を事業のコアに置く
tasukuonizawa
1
400
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
93k
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
780
GitHub Copilot CLI を使いやすくしよう
tsubakimoto_s
0
110
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
680
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
331
21k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
98
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
280
We Are The Robots
honzajavorek
0
170
Code Reviewing Like a Champion
maltzj
527
40k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Claude Code のすすめ
schroneko
67
210k
Typedesign – Prime Four
hannesfritz
42
3k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Being A Developer After 40
akosma
91
590k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
180
Transcript
dev.toの記事もGitHubで管理し てみた 1
Name:ユータ Occupation:SRE Twitter:@Y0u281 (オーでなくゼロです) ブログ:https://zenn.dev/yuta28 自己紹介 Twitter 2
目次 • 背景 • dev.toについて • dev.to管理用テンプレートリポジトリ • dev.toとGitHubとの連携 •
まとめ 3
背景 • Zennでブログ執筆中 ◦ GitHub Actionsを使って記事の自動投稿を実現 • dev.toでも同じように自動投稿を実現したい • すでに実践している人がいたので参考にしてみた
詳しくはこちら↓ GitHub ActionsでZennブログの 校正を自動化してみた 4
dev.toについて • 英語版Qiitaみたいなもの • 爆速であることで有名 ◦ 阿部寛さんのHPとどちらが速いか比較されたこともある • スマホアプリ版もある DEV
is a community of software developers getting together to help one another out. The software industry relies on collaboration and networked learning. We provide a place for that to happen. Aboutページより引用 5
dev.to管理用テンプレートリポジトリ 以下のリポジトリをコピーしてもらえたら皆さんもdev.toの記事をGitHubで管理できま す。 https://github.com/Yuhta28/dev-to-blog-template 6
DEV Community APIキー生成 GitHubにセットするAPIキー DEV API (beta) | Forem Docs
APIはベータ版なのか若干動作不安 7
GitHub Actions用の変数セット 先ほど生成したAPIキーをセット 8
GitHub Actionsワークフロー設定 deploy: # 長いので記事投稿部分のみ抜粋 name: Deploy if: github.ref == 'refs/heads/main'
&& github.event_name == 'push' runs-on: ubuntu-latest steps: - name: Checkout Repo uses: actions/checkout@master - name: Install Dependencies uses: bahmutov/npm-install@v1 - name: Deploy to dev.to run: DEV_TO_GIT_TOKEN=${{ secrets.DEV_TO_GIT_TOKEN }} yarn run dev-to-git Yarnパッケージ ↑参照 dev-to-gitにAPIキーを渡す 9
記事の初期作成 dev.toのAPIリクエストで作成する curl -X POST -H "Content-Type: application/json" \ -H
"api-key: API_KEY" \ -d \ '{"article":{"title":"Template","body_markdown":"Body","published":false,"tags":["tag1", "tag2"]}}' https://dev.to/api/articles 環境変数でセット 10 Goで作った
記事の初期作成 ドラフト記事作成 この記事のIDを取得する 11
記事IDの取得 curl -H "api-key: API_KEY" https://dev.to/api/articles/me/(un)published | \ jq '.[].id'
プログラミング言語でも取得できますが、一部の言語では取得できませんでした。 例:Python dev-to-git.json 12
記事の校正 簡単な誤字脱字はtextlintと reviewdogでCI時に自動検知 13
記事のデプロイ 14
記事のデプロイ 15
まとめ • ブログもGitHubで管理 • 好きなエディターで記事を書こう • GitHub Actionsはいいぞ! 16
ありがとうございました より詳しい内容は以下のブログで↓ dev.toの記事もGitHubで管理してみた (zenn.dev) 17