Githubからグリッチへの私の配備を自動化すること
5088 ワード
プログラマは自動化を愛する何度も何度も行う必要がありますか?自動化!私が自動化するために働いていたこれらのタスクのうちの1つはGitTubからグリッチまでコードを展開しています.これが私の最新のプロセスです.それは進行中の仕事です、しかし、それをチェックして、私にあなたが何を考えるかについて知らせさせてください.
なぜgituubグリッチ?
グリッチは、書き込みと完全なスタックのアプリをオンラインでテストするための素晴らしいツールです.しかし、私はまた、特に私がチームで働いているとき、コードレビューのためのGithubのツールが好きです.私の理想的な流れはグリッチリミックスに取り組むことです、GitTubにプッシュしてください、そして、私のチームと批評して、主なグリッチプロジェクトに配備してください.
これは、一度グリッチアプリを推進している重要です.ユーザーが積極的にそれを見て、それをリミックスする間、私はスターターDisordを編集して、テストしたくありません.
私のオリジナルソリューションはProbotでした.GitTubからコードをインポートするグリッチAPIを使用しました.問題はグリッチAPIはパブリックではありません.それは私たちがそれを使用して独自のツールを構築することをお勧め安定したポイントではありません.私はいくつかのAPIの変更は、私が使用していたエンドポイントにパイプラインを下って来ていた知っていた.私がもうそれを使うことができないので、私は新しい解決を必要としました.
完全な警告:これは不可解な禁断のIT知識を使用する概念の証明です.そして、私はGitでそれさえ上手でありません.あなた自身の裁量で使用してください.より多くの知識の人々歓迎からのフィードバック.
Gitは、救出にフックします?
グリッチプロジェクトはそれぞれ独自のGitレポを持っているので、私はその代わりにそれを使用できるかどうか疑問に思った.私は、レポ活動に応じていくつかの行動を自動化することができるGitフックと呼ばれる何かがあるということを知っていました.しかし、私は前に彼らを決して使わなかったでしょう.
reading時間のカップルと後でテストして、私はマスター・ブランチにどんな新しいコードも展開する作業プロトタイプを持っていました.
しかし、それは方程式のgithub部分を解決しませんでした.そのために、私は新しい何かを試みることに決めました:Github行動.私はdocsを読んで、git-sync by weiで決める前に、カップルを試みました.私はいくつかのランダムなバグを主に私を把握するために数時間かかった認証を扱っていた.
ワークフロー
更新したいとしましょう.私は人々がそれを使っている間、直接編集したくないので、はグリッチ でそれをリミックスします私の編集を行い、新しい支店 にそれらをコミットしますは、ギタブレポ に新しい支店を押します
私がマスターに新しい支店のためにPRをつくるGithubレポのそして、私のチームと私は、変化 をチェックします
承認される、我々は を合併します
ここでオートメーションが始まるところですマージは、Githubアクション を引き起こしますギタブアクションは、メイングリッチアプリ のGitレポにコードをプッシュします
主なグリッチAPPのGIT Repoがそれを受けるとき、がそれをGitフック を引き起こします GITフックは、すべての現在のコードを新しいコード に置き換えます
ハウツーとスタイル
ちょうどこれがあなたのグリッチプロジェクトのどんなコードでも拭いて、Githubからコードでそれを置き換えると警告するので、注意してください!
必要です.コードが に展開するグリッチプロジェクトコードが から展開するそのプロジェクトのための公共のgithub repo
ステップ1:グリッチターミナルはグリッチターミナル に行きますは、
お気に入りのテキストエディタを使用して端末でGiTookを作成します.私はvimを
このbashスクリプトをフックに入れます.
フック実行許可を
ステップ2:Githubの秘密を作成するあなたのグリッチプロジェクトに戻り、ツールをクリックします. コピー
それがあなたのgithubレポと「秘密」セクションへの秘密の頭である時から、は全体のものを新しい秘密にペーストして、それを
ステップ3 : Githubアクションを作成する
アクションに頭を頭とワークフローを設定するから これはあなたの秘密とGit同期アクションを使用するためのコードです.
ステップ4:それをテスト!
今すぐ魔法の瞬間.とにかくあなたのGithubコードを更新します.そして、それを見るために行動をクリックしてください.アクション.
未来?
これで、Githubから自動展開を設定する方法を知っています.あなたが十分に興味があるならば、我々はすべてのそれらのステップを自動化する方法をセットアップするかもしれません.オートメーションより良い何かがあるならば、オートメーションのオートメーションです.今のところ、それを試してみて、あなたが何を考えるかをお知らせください!
なぜgituubグリッチ?
グリッチは、書き込みと完全なスタックのアプリをオンラインでテストするための素晴らしいツールです.しかし、私はまた、特に私がチームで働いているとき、コードレビューのためのGithubのツールが好きです.私の理想的な流れはグリッチリミックスに取り組むことです、GitTubにプッシュしてください、そして、私のチームと批評して、主なグリッチプロジェクトに配備してください.
これは、一度グリッチアプリを推進している重要です.ユーザーが積極的にそれを見て、それをリミックスする間、私はスターターDisordを編集して、テストしたくありません.
私のオリジナルソリューションはProbotでした.GitTubからコードをインポートするグリッチAPIを使用しました.問題はグリッチAPIはパブリックではありません.それは私たちがそれを使用して独自のツールを構築することをお勧め安定したポイントではありません.私はいくつかのAPIの変更は、私が使用していたエンドポイントにパイプラインを下って来ていた知っていた.私がもうそれを使うことができないので、私は新しい解決を必要としました.
完全な警告:これは不可解な禁断のIT知識を使用する概念の証明です.そして、私はGitでそれさえ上手でありません.あなた自身の裁量で使用してください.より多くの知識の人々歓迎からのフィードバック.
Gitは、救出にフックします?
グリッチプロジェクトはそれぞれ独自のGitレポを持っているので、私はその代わりにそれを使用できるかどうか疑問に思った.私は、レポ活動に応じていくつかの行動を自動化することができるGitフックと呼ばれる何かがあるということを知っていました.しかし、私は前に彼らを決して使わなかったでしょう.
reading時間のカップルと後でテストして、私はマスター・ブランチにどんな新しいコードも展開する作業プロトタイプを持っていました.
しかし、それは方程式のgithub部分を解決しませんでした.そのために、私は新しい何かを試みることに決めました:Github行動.私はdocsを読んで、git-sync by weiで決める前に、カップルを試みました.私はいくつかのランダムなバグを主に私を把握するために数時間かかった認証を扱っていた.
ワークフロー
更新したいとしましょう.私は人々がそれを使っている間、直接編集したくないので、
私がマスターに新しい支店のためにPRをつくるGithubレポの
承認される
ここでオートメーションが始まるところです
主なグリッチAPPのGIT Repoがそれを受けるとき、
ハウツーとスタイル
ちょうどこれがあなたのグリッチプロジェクトのどんなコードでも拭いて、Githubからコードでそれを置き換えると警告するので、注意してください!
必要です.
ステップ1:グリッチターミナル
git config receive.denyCurrentBranch ignore
を走らせますvim .git/hooks/post-receive
を使用しました#!/bin/bash
unset GIT_INDEX_FILE
git --work-tree=/app --git-dir=/app/.git checkout -f
chmod +x .git/hooks/post-receive
ステップ2:Githubの秘密を作成する
Your project's Git URL:
は、それを秘密にしておくために、Authトークンを含みます!glitch_git_URL
と命名しますステップ3 : Githubアクションを作成する
アクションに頭を
SOURCE_REPO
の値をhttps - github URL ( https://github.com/glitchdotcom/devto.git
など)に置き換えます.on:
pull_request:
types: [closed]
jobs:
repo-sync:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
steps:
- name: repo-sync
uses: wei/git-sync@v1
env:
SOURCE_REPO: "https://github.com/glitchdotcom/devto.git"
SOURCE_BRANCH: "master"
DESTINATION_REPO: ${{ secrets.glitch_git_URL }}
DESTINATION_BRANCH: "master"
with:
args: $SOURCE_REPO $SOURCE_BRANCH $DESTINATION_REPO $DESTINATION_BRANCH
ステップ4:それをテスト!
今すぐ魔法の瞬間.とにかくあなたのGithubコードを更新します.そして、それを見るために行動をクリックしてください.アクション.
未来?
これで、Githubから自動展開を設定する方法を知っています.あなたが十分に興味があるならば、我々はすべてのそれらのステップを自動化する方法をセットアップするかもしれません.オートメーションより良い何かがあるならば、オートメーションのオートメーションです.今のところ、それを試してみて、あなたが何を考えるかをお知らせください!
Reference
この問題について(Githubからグリッチへの私の配備を自動化すること), 我々は、より多くの情報をここで見つけました https://dev.to/glitch/automating-my-deploys-from-github-to-glitch-2fpdテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol