ゼロからコンテナの自動化まで7分で

以前の記事(ポルトガル語)、私はちょうどドッカーイメージと設定ファイルを使用して完全に機能するGraphQLのバックエンドを作成する方法を説明しました。これらはすべてAzureサイトにあります。とりあえず、ホスティングとサーバー側の更新用に作成されたデプロイメントを自動化する方法について話しましょう!



このプロジェクト全体の目標は、将来のコンテンツアーカイブを自分のサイトでホストするためのバックエンドを作成することですただし、バックエンドを更新したり、GraphQLスキーマを変更したりするたびに、フルサービスの展開を再度実行する必要があります。



, push Azure. . , , GitHub Azure. , GitHub , ?



GitHub Actions





GitHub, , Travis Circle, . , .



: + backend-:





, , : docker-compose.yml mongoke.yml, GraphQL.



, , «» — !





GitHub , , , . ? , :



  1. push
  2. Azure main service, , Azure/login
  3. Azure/cli, .


:



  • GitHub , , URL- YAML- Mongoke
  • URI MongoDB,




-, : , , URL- MongoDB . «» «». , « » . URI MongoDB, MONGODB_URI.





Azure



GitHub Azure, Service Principal. .



Azure CLI. az login, :



az ad sp create-for-rbac --name <SP-name> --role contributor --scopes /subscriptions/<subscriptionID>/resourceGroups/<resourcegroupname> --sdk-auth


ID , az account list : isDefault true. , , : , .



: , , Resource Group. « -», - .



JSON :



{
  "clientId": "xxxxxxx",
  "clientSecret": "xxxxxxxx",
  "subscriptionId": "xxxxxxxx",
  ...
}


GitHub AZURE_CREDENTIALS:





:







, «» «» « »:





, :





, GitHub Actions — , YAML- /.Github/workflows. , . publish-prod.yml:



:





— GitHub, :





, . , push , , , . , , intellisense:





, . . the official documentation

, , , . env:





, . , . , . , :





Ubuntu, : in the documentation. . — , . , !



, Azure ! Azure/ :





. , :





. , AZURE_CREDENTIALS. , , : $ {{secrets.AZURE_CREDENTIALS}}.



:





, « », — Azure. run, , . :





, MONGOKE_CONFIG_URL. , SHA- , . , . « URL-».



Workflow Command, GitHub Actions, ::. set-env, . : ::set-env name=<name>::<value>, :





, ${{env.MONGOKE_CONFIG_URL}} ?v= native environment variable, GITHUB_SHA. :





, , . MONGOKE_CONFIG_URL, MONGOKE_URL:





:





« » :







«»:





, . , , :





Azure , :





, , URL- :







7 Azure , , , , !



GitHub Actions !



!






. - , dev.to




All Articles