私のGitlab Setupで実装しようとしているのは、Gitlab User Interfaceからadminによって新しいプロジェクトが作成されたとき、プロジェクトを自動的にApacheのルートディレクトリユーザーはプロジェクトをローカルシステムに複製するのではなく、ブラウザから変更を表示し、Apacheのルートディレクトリにプッシュすることができます。Gitlab:新しいプロジェクトが作成されたときにリポジトリを別の場所にクローズ
私はオート/ var/www/htmlと設定/
私のGitlab Setupで実装しようとしているのは、Gitlab User Interfaceからadminによって新しいプロジェクトが作成されたとき、プロジェクトを自動的にApacheのルートディレクトリユーザーはプロジェクトをローカルシステムに複製するのではなく、ブラウザから変更を表示し、Apacheのルートディレクトリにプッシュすることができます。Gitlab:新しいプロジェクトが作成されたときにリポジトリを別の場所にクローズ
私はオート/ var/www/htmlと設定/
にクローニングされる新しい作成gitlabプロジェクトは、あなたがAPIおよびこの種のものを行うにはCIを活用する必要があるクローンをたい。
は、プロジェクトが作成されたときにトリガーSystem Hookを作成します。必要な手順は、このようなものになるだろう。
フックが発生した場合は、Webサーバー上の展開を定義する.gitlab-ci.yml
ファイルを作成します。
Enable the runnerプロジェクトのために配置することができます。
リポジトリをプッシュするたびに、Webサーバーに展開されます。
例:
管理インタフェースAdmin Area -> System Hooks
またはcurl
コマンドを使用して、システムを経由してフックを作成します。次のイベントのいずれかが起こるたびDoc
curl -X POST -H "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" "https://gitlab.example.com/api/v3/hooks?url=https://gitlab.example.com/hook"
これはURL https://gitlab.example.com/hook
を呼び出します:
project_create, project_destroy, project_rename, project_transfer, user_add_to_team, user_remove_from_team, user_create, user_destroy, key_create, key_destroy, group_create, group_destroy, user_add_to_group, user_remove_from_group
https://gitlab.example.com/hook
が呼び出されるたびに実行されるスクリプトのいくつかの並べ替えを作成する必要があります。このスクリプトは、別の
curl
要求を実行して.gitlab-ci.ymlファイルを作成するか、またはgitを使用して自動的に最初のコミットを作成します。
Doc
curl -X POST -H 'PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK' -F 'file_path=.gitlab-ci.yml' -F 'branch_name=master' -F 'commit_message=Initial' -F $'content=CI DEFINITION GOES HERE' 'https://gitlix.sw.jena.com/api/v3/projects/48/repository/files'
その後、あなたはそれがあなたのウェブサーバにそれを展開して、このプロジェクトのためにランナーを有効にする必要があります。 Doc
curl -X POST -H "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" "https://gitlab.example.com/api/v3/projects/9/runners" -F "runner_id=9"
あなたの返事ありがとうございます。これは私の要件のために物事を得るためにどのように作業すべきかを定義します。私はGitlabとHooksを始めとしています。新しいプロジェクトが作成されたときに、私が探していた特定のシステムフックを作成する方法をさらに詳しく教えてください。ありがとうございました 。 –
@CrshnaPariyarもっと明確にするために答えを更新しました。 – Fairy
gitlabはすでにリポジトリブラウザを提供していませんか? – larsks
Webアプリケーションプロジェクトで作業している間のことです。私はgitlabを新しく作成したプロジェクトをWebルートディレクトリに自動的にクローンして、apacheがファイルを実行できるようにする必要がありました。 –