私は半倒錯した何かをしている可能性が高いCIパイプラインを持っています。その部分について議論しません。CIビルドの一部としてリポジトリにコミットする
CIの一部として、コミットして同じリポジトリにプッシュバックするアーティファクト(README.md
)を生成します。 git push origin ...
を単に使用すると、認証エラーのために機能しません。
は、私は秘密の変数やトークンのようなものを使用して、それがプッシュすることができるように別のリモートを追加することに制約のですか?
私は半倒錯した何かをしている可能性が高いCIパイプラインを持っています。その部分について議論しません。CIビルドの一部としてリポジトリにコミットする
CIの一部として、コミットして同じリポジトリにプッシュバックするアーティファクト(README.md
)を生成します。 git push origin ...
を単に使用すると、認証エラーのために機能しません。
は、私は秘密の変数やトークンのようなものを使用して、それがプッシュすることができるように別のリモートを追加することに制約のですか?
CIジョブのプロジェクトを取得した後、Gitlabが.gitフォルダを変更しているようです。私はそれがリモートセクションだけを変更するのか分からない。だから私はgitlabにsshkeysを付けたgitlab-runnerユーザを追加するだけの解決策を見つけました。私の仕事ではgit clone
を別のフォルダに入れ、変更してからコミットして押します。
コミットあるいは原点にプッシュを行うことがあるビルド実行時にsshのトークンを追加する方法があります。 私は最近GitLabが新しいビルドごとに独自のトークンが生成され、同じように使用できるという新しい機能を追加したと思います。チェックアウトは切り離さヘッドモードになっているよう
しかし、一般的に、私はあなたが構築同じgitのベースの上に何かをコミットすることができると思ういけないが、実行されています。つまり、特にリモートの履歴に追加することはできません。考慮すべき
次の問題は、あなたが潜在的に別のビルドをトリガーすることができ、サイクルがトリガされますビルドシステム、のために戻ってコミットすることができましたならば、これは何を意味するのかです。
だから、おそらくそれのために人工物システムを使用するか、またはSSHトークンと、ビルド時に別のディレクトリにあるクローン/チェックアウト/コミット/プッシュを追加しませんどちらか。永久運動の側面は、同様に私を悩ますhttps://docs.gitlab.com/ee/ci/ssh_keys/README.html
:とにかくこのドキュメントは、トークンを追加する方法について説明します。私はこの全体的なアイデアをもともと「変態」と言いました。それは、誰かが私に尋ねた場合、私は最初に「しないでください」と答えてから、実際に助けになる前に強い落胆があるという質問のようなものです。ですから、私はあなたの助けに感謝します:) –
GitLabにどのように身近であるかわかりません、もっと広い視野を与えようとしました。しかしリンクはあなたがセットアップし、あなたがとにかくしたいことをするのに役立ちます。 – mohamnag