--- kind: pipeline name: "Mysql 5.7" services: - name: database image: mysql:5.7 ports: - 3306 environment: MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' - name: rabbitmq image: rabbitmq:3.8.9 ports: - 5672 - name: vault image: vault:0.11.4 ports: - 8200 environment: SKIP_SETCAP: 1 BARONG_VAULT_TOKEN: changeme VAULT_DEV_ROOT_TOKEN_ID: changeme BARONG_VAULT_ADDRESS: http://vault:8200 - name: redis image: redis:4.0 ports: - 6379 steps: - name: Configure Vault image: vault:0.11.4 commands: - vault secrets disable secret - vault secrets enable -path=secret -version=1 kv - vault secrets enable totp environment: VAULT_TOKEN: changeme VAULT_DEV_ROOT_TOKEN_ID: changeme VAULT_ADDR: http://vault:8200 - name: Run rspec image: ruby:2.6.6 environment: DATABASE_HOST: database BARONG_EVENT_API_RABBITMQ_HOST: rabbitmq BARONG_VAULT_ADDRESS: http://vault:8200 BARONG_VAULT_TOKEN: changeme RAILS_ENV: test REDIS_URL: redis://redis:6379 BARONG_REDIS_URL: redis://redis:6379 RAILS_MASTER_KEY: from_secret: rails_master_key commands: - gem update bundler - bundle install --system - ./bin/init_config - rake db:create db:migrate - bundle exec rspec - name: Bump and tag image: quay.io/openware/sdk-citools:2.6.7 environment: BOT_USERNAME: kite-bot BOT_NAME: Kite Bot BOT_EMAIL: kite-bot@heliostech.fr BRANCH_NAME: ${DRONE_BRANCH} REPO_NAME: ${DRONE_REPO} GITHUB_API_KEY: from_secret: kite_bot_key commands: - BUNDLE_GEMFILE=/sdk/Gemfile bundle exec rake --rakefile=/sdk/Rakefile ci:prebuild when: branch: - "*-stable" - name: Tag snapshot image: quay.io/openware/sdk-citools:2.6.7 environment: BOT_USERNAME: kite-bot BOT_NAME: Kite Bot BOT_EMAIL: kite-bot@heliostech.fr BRANCH_NAME: master REPO_NAME: ${DRONE_REPO} GITHUB_API_KEY: from_secret: kite_bot_key commands: - BUNDLE_GEMFILE=/sdk/Gemfile bundle exec rake --rakefile=/sdk/Rakefile ci:prebuild when: branch: - master - "fix/*" - "integration/*" - name: Generate docs image: quay.io/openware/ruby-node:2.6.5 environment: DATABASE_HOST: database BARONG_EVENT_API_RABBITMQ_HOST: rabbitmq BARONG_VAULT_ADDRESS: http://vault:8200 RAILS_MASTER_KEY: from_secret: rails_master_key commands: - gem update bundler - bundle install - bundle exec bin/gendocs when: branch: - master - "*-stable" - name: Docker build and push image: plugins/docker environment: MAXMIND_LICENSE_KEY: from_secret: maxmind_license_key settings: username: from_secret: quay_username password: from_secret: quay_password repo: quay.io/openware/barong registry: quay.io build_args_from_env: - MAXMIND_LICENSE_KEY when: branch: - master - "*-stable" - "fix/*" - "integration/*" - name: Redeploy on master.devkube.com image: rubykube/microkube:0.2.0 environment: WEBHOOK_JWT_SECRET: from_secret: devkube_webhook_secret commands: - export latest_image=quay.io/openware/barong:$(cat .tags) - cd /home/app - bundle exec rake payload:send[barong,$latest_image,http://master.devkube.com:1337] when: branch: - master - name: Push and Notify image: quay.io/openware/sdk-citools:2.6.7 environment: BOT_USERNAME: kite-bot BOT_NAME: Kite Bot BOT_EMAIL: kite-bot@heliostech.fr BRANCH_NAME: ${DRONE_BRANCH} SDK_BRANCH: ${DRONE_BRANCH} REPO_NAME: ${DRONE_REPO} TELEGRAM_BOT_TOKEN: from_secret: telegram_bot_token TELEGRAM_CHAT_ID: from_secret: telegram_chat_id SLACK_TOKEN: from_secret: slack_token SLACK_CHANNEL: from_secret: slack_channel GITHUB_API_KEY: from_secret: kite_bot_key commands: - BUNDLE_GEMFILE=/sdk/Gemfile bundle exec rake --rakefile=/sdk/Rakefile ci:postbuild[/drone/src] when: branch: - master - "*-stable" - name: "Update global OpenDAX version" image: quay.io/openware/goci:0.0.7 environment: GIT_TOKEN: from_secret: kite_bot_key commands: - /app/goci versions when: branch: - "*-stable" trigger: event: - push image_pull_secrets: - dockerconfigjson --- kind: pipeline name: "MariaDB 10.3" services: - name: database image: mariadb:10.3 ports: - 3306 environment: MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' - name: rabbitmq image: rabbitmq:3.8.9 ports: - 5672 - name: vault image: vault:0.11.4 ports: - 8200 environment: SKIP_SETCAP: 1 BARONG_VAULT_TOKEN: changeme VAULT_DEV_ROOT_TOKEN_ID: changeme BARONG_VAULT_ADDRESS: http://vault:8200 - name: redis image: redis:4.0 ports: - 6379 steps: - name: Configure Vault image: vault:0.11.4 commands: - vault secrets disable secret - vault secrets enable -path=secret -version=1 kv - vault secrets enable totp environment: VAULT_TOKEN: changeme VAULT_DEV_ROOT_TOKEN_ID: changeme VAULT_ADDR: http://vault:8200 - name: Run rspec image: ruby:2.6.6 environment: DATABASE_HOST: database BARONG_EVENT_API_RABBITMQ_HOST: rabbitmq BARONG_VAULT_ADDRESS: http://vault:8200 BARONG_VAULT_TOKEN: changeme RAILS_ENV: test REDIS_URL: redis://redis:6379 BARONG_REDIS_URL: redis://redis:6379 RAILS_MASTER_KEY: from_secret: rails_master_key commands: - gem update bundler - bundle install --system - ./bin/init_config - rake db:create db:migrate - bundle exec rspec trigger: event: - push branch: - "compatibility/*" - "*-stable" --- kind: pipeline name: "MySQL 8.0" services: - name: database image: mysql:8.0 commands: - /entrypoint.sh --default-authentication-plugin=mysql_native_password ports: - 3306 environment: MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' - name: rabbitmq image: rabbitmq:3.8.9 ports: - 5672 - name: vault image: vault:0.11.4 ports: - 8200 environment: SKIP_SETCAP: 1 BARONG_VAULT_TOKEN: changeme VAULT_DEV_ROOT_TOKEN_ID: changeme BARONG_VAULT_ADDRESS: http://vault:8200 - name: redis image: redis:4.0 ports: - 6379 steps: - name: Configure Vault image: vault:0.11.4 commands: - vault secrets disable secret - vault secrets enable -path=secret -version=1 kv - vault secrets enable totp environment: VAULT_TOKEN: changeme VAULT_DEV_ROOT_TOKEN_ID: changeme VAULT_ADDR: http://vault:8200 - name: Run rspec image: ruby:2.6.6 environment: DATABASE_HOST: database BARONG_EVENT_API_RABBITMQ_HOST: rabbitmq BARONG_VAULT_ADDRESS: http://vault:8200 BARONG_VAULT_TOKEN: changeme RAILS_ENV: test REDIS_URL: redis://redis:6379 BARONG_REDIS_URL: redis://redis:6379 RAILS_MASTER_KEY: from_secret: rails_master_key commands: - gem update bundler - bundle install --system - ./bin/init_config - rake db:create db:migrate - bundle exec rspec trigger: event: - push branch: - "compatibility/*" - "*-stable" --- kind: pipeline name: "PostgreSQL 13.0" services: - name: database image: postgres:13.0 ports: - 5432 environment: POSTGRES_PASSWORD: changeme - name: rabbitmq image: rabbitmq:3.8.9 ports: - 5672 - name: vault image: vault:0.11.4 ports: - 8200 environment: SKIP_SETCAP: 1 BARONG_VAULT_TOKEN: changeme VAULT_DEV_ROOT_TOKEN_ID: changeme BARONG_VAULT_ADDRESS: http://vault:8200 - name: redis image: redis:4.0 ports: - 6379 steps: - name: Configure Vault image: vault:0.11.4 commands: - vault secrets disable secret - vault secrets enable -path=secret -version=1 kv - vault secrets enable totp environment: VAULT_TOKEN: changeme VAULT_DEV_ROOT_TOKEN_ID: changeme VAULT_ADDR: http://vault:8200 - name: Run rspec image: ruby:2.6.6 environment: DATABASE_HOST: database DATABASE_ADAPTER: postgresql DATABASE_PORT: "5432" DATABASE_PASS: changeme DATABASE_USER: postgres BARONG_EVENT_API_RABBITMQ_HOST: rabbitmq BARONG_VAULT_ADDRESS: http://vault:8200 BARONG_VAULT_TOKEN: changeme RAILS_ENV: test REDIS_URL: redis://redis:6379 BARONG_REDIS_URL: redis://redis:6379 RAILS_MASTER_KEY: from_secret: rails_master_key commands: - gem update bundler - bundle install --system - ./bin/init_config - rake db:create db:migrate - bundle exec rspec trigger: event: - push branch: - "compatibility/*" - "*-stable"