Git-WebHook自動化導入ツール-Github/GitLab/Gogs/GitOscをサポート
一、背景
まず住所を貼り、オープンソース項目:https://github.com/NetEaseGame/git-webhook、DEMOアドレス:http://webhook.hust.cc/
私個人はオンラインのこちらのテスト開発で、主な仕事はいくつかのツールを開発することで、補助テストと開発、規範の流れなど、これらのイントラネットのツールは、一般的に何の同時性も存在しないで、性能のボトルネック、オンラインの配置は実はとても簡単で、オンラインを更新する必要がある時、最新のコードをrelease分岐に提出して、それからsshはサーバーに上陸して、shellスクリプトを実行し、最新のコードを引いてrestartを引くといいですが、複雑ではありません.その後、いくつかの問題があります.ssh権限のない学生がコードを更新したら、再起動を手伝ってくれる. 土日祝日、残業している人から電話がありました.サービスが切れたら再起動しなければなりません.どうすればいいですか. pushのたびにrestartに行くのですが、実はイライラしています. git pushのコードを一度に多くのサーバに更新する必要があると、さらにイライラします.
gitのwebhookを利用して導入を簡素化する小さなツールを作りました
二、git-webhook
Git WebHookは、Python Flask+SQLAchemy+Celery+Redis+Reactを使用して開発されたWebHookを迅速に構築し、使用して自動化された導入とメンテナンスシステムであり、Github/GitLab/Gogs/GitOscをサポートしています.技術スタックが簡単で、配置が簡単である; コードが簡潔で分かりやすく、二次開発にストレスがない. Github/GitLab/Gogs/GitOscをサポートする; SSH方式を使用し、マルチサービス構成をサポートする;
三、どのようにインストールしますか?
1.アプリケーションのインストール
メモ:プロジェクト内の依存ライブラリにpython-devをインストールする必要があります.
2.構成の作成
コマンドが実行されると、対応するユーザディレクトリ(~)に新しいプロファイルが生成され、プロファイルの内容が変更されます.主に3点を設定する必要があります. 3.データベース構造の初期化
4.アプリケーションの実行
実行後、開くhttp://127.0.0.1:18340 (扇動して死ぬ)すぐ訪問できます.GitHubアカウントでログインします.
ツールにWebHookアイテムを追加し、WebHookのURLを取得し、Github/GitLab/OscGitのWebHook構成に記入します.
四、スクリーンショット
MIT @hustcc
まず住所を貼り、オープンソース項目:https://github.com/NetEaseGame/git-webhook、DEMOアドレス:http://webhook.hust.cc/
私個人はオンラインのこちらのテスト開発で、主な仕事はいくつかのツールを開発することで、補助テストと開発、規範の流れなど、これらのイントラネットのツールは、一般的に何の同時性も存在しないで、性能のボトルネック、オンラインの配置は実はとても簡単で、オンラインを更新する必要がある時、最新のコードをrelease分岐に提出して、それからsshはサーバーに上陸して、shellスクリプトを実行し、最新のコードを引いてrestartを引くといいですが、複雑ではありません.その後、いくつかの問題があります.
gitのwebhookを利用して導入を簡素化する小さなツールを作りました
二、git-webhook
Git WebHookは、Python Flask+SQLAchemy+Celery+Redis+Reactを使用して開発されたWebHookを迅速に構築し、使用して自動化された導入とメンテナンスシステムであり、Github/GitLab/Gogs/GitOscをサポートしています.
三、どのようにインストールしますか?
1.アプリケーションのインストール
pip install git-webhook
メモ:プロジェクト内の依存ライブラリにpython-devをインストールする必要があります.
2.構成の作成
gitwebhook config
コマンドが実行されると、対応するユーザディレクトリ(~)に新しいプロファイルが生成され、プロファイルの内容が変更されます.主に3点を設定する必要があります.
DATABASE_URI
:データベースアドレスは、理論的には任意の関係データベースを使用することができる.sqliteとmysql(テスト済み)の使用を推奨します.CELERY REDIS
:Redis URI配置、主にCeleryバックグラウンドタスクに使用する;GITHUB
:GitHub登録構成、OAuthアプリケーションへ自己申請可能、登録Callbackアドレス:your_domain/github/callback
・gitwebhook createdb
4.アプリケーションの実行
# 1. run python webserver
gitwebhook runserver
# 2. run celery async task
gitwebhook celery
実行後、開くhttp://127.0.0.1:18340 (扇動して死ぬ)すぐ訪問できます.GitHubアカウントでログインします.
ツールにWebHookアイテムを追加し、WebHookのURLを取得し、Github/GitLab/OscGitのWebHook構成に記入します.
四、スクリーンショット
MIT @hustcc