Golang は効率的で使いやすいプログラミング言語として、ますます多くの企業や開発者に使用されています。アプリケーションをスムーズに実行するために、信頼性が高く高速な継続的インテグレーション (CI) および継続的デリバリー (CD) ソリューションを求める企業がますます増えています。 Golang の CI プロセスはプログラミング言語としては比較的単純なので、この記事では Golang の CI プロセスについて紹介します。
Golang CI プロセスには次の手順が含まれます。
最初の手順は、コード ベースを作成して定義することです。リポジトリは、Golang プロジェクトのソース コードが保存される場所です。 Github、GitLab、Bitbucket などのコード ホスティング サービスを使用して、コード ベースをホストできます。 Git は最も人気のあるバージョン管理ツールの 1 つであるため、Git を使用することをお勧めします。
Golang プロジェクトをビルドするには、Go ツール チェーンのツールを使用する必要があります。 Go ツールチェーンがインストールされていることを確認した後、Go モジュールをインストールする必要があります。 Go モジュールは Go 1.11 で導入された依存関係管理ツールで、セマンティック バージョニングをサポートし、プロジェクトをよりモジュール化できます。
テストの作成は、CI プロセスを確実に行うための重要な手順です。 Golang で一般的に使用されるテスト フレームワークには、testing、assert、testify が含まれます。このうち、testing は Go 自体の一部であり、assert と testify はサードパーティの単体テスト フレームワークです。
サンプル コードは次のとおりです:
package main import ( "testing" "github.com/stretchr/testify/assert" ) func TestAddition(t *testing.T) { assert.Equal(t, 2+2, 4) }
この例では、testify アサーションを使用し、2 2 が 4 に等しいかどうかをテストします。テストに合格すると、コンソールに「PASS」という出力が表示されます。
プロジェクトをリポジトリにアップロードした後、プロジェクトを自動的にコンパイル、テスト、ビルドするように CI ツールを構成する必要があります。一般的に使用される CI ツールには、Jenkins、Travis CI、Circle CI などが含まれます。
この記事では、Travis CI で Golang プロジェクトを継続する方法を紹介します。
まず、Travis CI にアカウントを登録する必要があります。次に、Travis CI コンソールを開き、GitHub または GitLab を使用してアクセスを承認します。
次に、コード ベースのルート ディレクトリに .travis.yml
という名前のファイルを作成する必要があります。このファイルには、Travis CI の構成情報が含まれています。サンプル構成は次のとおりです。
language: go go: - "1.13" script: - go test -v ./...
ここでは、Golang バージョンを 1.13 に指定し、script
ステージにテスト コマンドを追加してすべてのテストを実行します。
CI ツールを構成した後、CI インスタンスで実行されるビルド スクリプトを作成する必要があります。ビルド スクリプトの正確な内容は、プロジェクトとビルド ツールの要件によって異なります。
この記事では、Makefile を使用してビルド スクリプトを作成します。 Makefile は、タスクを簡単に自動化するのに役立つ便利なツールです。
これはサンプル Makefile です:
.PHONY: test build help: @echo "Choose one of the following targets:" @echo " test - run unit tests" @echo " build - build the project" test: go test -v ./... build: CGO_ENABLED=0 go build -a -ldflags '-extldflags "-static"' -o app main.go
このサンプル Makefile では、2 つのターゲット: test
と build
を定義します。 test
ターゲットは go test
コマンドを使用してすべてのテストを実行し、build
ターゲットは go build
コマンドを使用してバイナリをビルドします。
ビルドが成功したら、アプリケーションを運用環境にデプロイする必要があります。デプロイメントプロセスは、アプリケーションが使用するデプロイメントパイプラインによって異なります。一般的に使用されるデプロイメント ツールには、Ansible、Chef、Puppet などが含まれます。
デプロイメント中は、アプリケーションが安全に実行され、確実に動的にスケーリングされることを確認する必要があります。また、アプリケーションを監視し、エラーや不具合があれば自動的に通知されるようにする必要があります。
最後に、Golang CI プロセスは継続的で自動化されたプロセスであり、開発者が問題を迅速に特定し、迅速に修正するのに役立ちます。上記の手順に従うことで、Golang の継続的統合プロセスを簡単に作成し、自動化されたプロセスを通じてアプリケーションの信頼性とスケーラビリティを確保できます。
以上がgolang ciプロセスの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。