113 lines
2.8 KiB
YAML
113 lines
2.8 KiB
YAML
version: 2.1
|
|
|
|
orbs:
|
|
kubernetes: circleci/kubernetes@1.0.0
|
|
helm: circleci/helm@2.0.1
|
|
|
|
jobs:
|
|
|
|
build-push-docker-image:
|
|
docker:
|
|
- image: cimg/base:stable
|
|
environment:
|
|
TAG: << pipeline.git.tag >>
|
|
steps:
|
|
- checkout
|
|
- add_ssh_keys:
|
|
fingerprints:
|
|
- "39:25:57:64:62:43:1f:98:b1:5e:75:53:87:d8:e7:71"
|
|
- run: cp $HOME/.ssh/id_rsa_3925576462431f98b15e755387d8e771 id_rsa
|
|
- setup_remote_docker:
|
|
version: 20.10.12
|
|
docker_layer_caching: true
|
|
- run: docker login rg.fr-par.scw.cloud/lecoffre -u nologin -p $SCW_SECRET_KEY
|
|
- run: docker build --tag rg.fr-par.scw.cloud/lecoffre/front:$TAG .
|
|
- run: docker push rg.fr-par.scw.cloud/lecoffre/front:$TAG
|
|
|
|
|
|
deploy-docker-image:
|
|
parameters:
|
|
env:
|
|
type: string
|
|
default: ""
|
|
docker:
|
|
- image: cimg/base:stable
|
|
environment:
|
|
TAG: << pipeline.git.tag >>
|
|
steps:
|
|
- checkout
|
|
- kubernetes/install-kubeconfig:
|
|
kubeconfig: KUBECONFIG_DATA
|
|
- helm/install-helm-client
|
|
- run:
|
|
name: Deploy
|
|
command: >
|
|
helm upgrade
|
|
lecoffre-front devops/ -i -f devops/<<parameters.env>>.values.yaml
|
|
-n lecoffre
|
|
--create-namespace
|
|
--set lecoffreFront.image.repository='rg.fr-par.scw.cloud/lecoffre/front'
|
|
--set lecoffreFront.image.tag=$TAG
|
|
|
|
|
|
workflows:
|
|
version: 2
|
|
build-and-deploy-stg:
|
|
jobs:
|
|
- build-push-docker-image:
|
|
filters:
|
|
tags:
|
|
only: /^v.*/
|
|
branches:
|
|
ignore: /.*/
|
|
- deploy-docker-image:
|
|
env: stg
|
|
requires:
|
|
- build-push-docker-image
|
|
context:
|
|
- staging
|
|
filters:
|
|
tags:
|
|
only: /^v.*/
|
|
branches:
|
|
ignore: /.*/
|
|
|
|
build-and-deploy-ppd:
|
|
jobs:
|
|
- build-push-docker-image:
|
|
filters:
|
|
tags:
|
|
only: /^v.*/
|
|
branches:
|
|
ignore: /.*/
|
|
- deploy-docker-image:
|
|
env: ppd
|
|
requires:
|
|
- build-push-docker-image
|
|
context:
|
|
- production
|
|
filters:
|
|
tags:
|
|
only: /^v.*/
|
|
branches:
|
|
ignore: /.*/
|
|
|
|
# build-and-deploy-prod:
|
|
# jobs:
|
|
# - build-push-docker-image:
|
|
# filters:
|
|
# tags:
|
|
# only: /^v.*/
|
|
# branches:
|
|
# ignore: /.*/
|
|
# - deploy-docker-image:
|
|
# requires:
|
|
# - build-push-docker-image
|
|
# context:
|
|
# - production
|
|
# filters:
|
|
# tags:
|
|
# only: /^v.*/
|
|
# branches:
|
|
# ignore: /.*/
|