代码之家  ›  专栏  ›  技术社区  ›  Anuj TBE

使用gitlab ci/cd部署后运行命令

  •  2
  • Anuj TBE  · 技术社区  · 7 年前

    Gitlab CI/CD 在每次推送时自动部署到Heroku应用程序。

    当前我的 .gitlab-ci.yml

    production:
      type: deploy
      script:
      - apt-get update -qy
      - apt-get install -y ruby-dev
      - gem install dpl
      - dpl --provider=heroku --app=koober-production --api-key=$HEROKU_PRODUCTION_API_KEY
      only:
      - master
    

    heroku run python manage.py migrate -a myapp
    

    如何在部署后自动运行此命令?

    2 回复  |  直到 7 年前
        1
  •  0
  •   Gnappuraz    7 年前

    弗斯特 types deprecated stages
    回到最初的问题,我认为你可以使用一个新的阶段/类型来实现这个目的。

    stages:
      - build
      - test
      - deploy
      - post_deploy
    
    post_production:
      stage: post_deploy
      script:
      - heroku run python manage.py migrate -a myapp
      only:
      - master
    

        2
  •  0
  •   Anuj TBE    7 年前

    --run dpl

    stages:
      - deploy
    
    production:
      stage: deploy
      script:
      - apt-get update -qy
      - apt-get install -y ruby-dev
      - gem install dpl
      - dpl --provider=heroku --app=koober-production --api-key=$HEROKU_PRODUCTION_API_KEY --run='python manage.py migrate && python manage.py create_initial_users'
      only:
      - master