include:
  - project: "devops/pena-continuous-integration"
    file: "/templates/docker/build-template.gitlab-ci.yml"
  - project: "devops/pena-continuous-integration"
    file: "/templates/docker/clean-template.gitlab-ci.yml"
  - project: "devops/pena-continuous-integration"
    file: "/templates/docker/deploy-template.gitlab-ci.yml"
stages:
  - clean
  - build
  - deploy

clear-old-images:
  extends: .clean_template
  variables:
    STAGING_BRANCH: "main"
    PRODUCTION_BRANCH: "main"
  image:
    name: docker/compose:1.28.0
    entrypoint: [""]
  before_script:
    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
    - docker images
  script:
    - docker system prune -af
build-app:
  extends: .build_template
  variables:
    DOCKER_BUILD_PATH: "./Dockerfile"
    STAGING_BRANCH: "main"
    PRODUCTION_BRANCH: "main"
  script:
    - docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID $CI_PROJECT_DIR
    - docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID

deploy-to-staging:
  extends: .deploy_template
  variables:
    DEPLOY_TO: "staging"
    BRANCH: "main"

