Skip to content
Snippets Groups Projects
Select Git revision
  • 4af38af26d5736736067c86ad470846594e027ce
  • main default protected
2 results

gitlab-ci.yml

Blame
  • gitlab-ci.yml 4.64 KiB
    variables:
      PHP_ERROR_REPORTING: E_ALL
      COMPOSER_ALLOW_SUPERUSER: 1
      GIT_STRATEGY: fetch
      RUN_AFTER_DEPLOY: "pwd"
      DEPLOY_AFTER_SCRIPT: ""
      PREDATORS_GROUP_ID: 788
    
    stages:
      - tests
      - build
      - deploy
    
    .template: &build-rules
      rules:
        - if: '$CI_PIPELINE_SOURCE == "merge_request_event" || $CI_COMMIT_REF_NAME == "devel"'
          when: always
          variables:
            APP_ENV: "staging"
            SHOPIFY_APP_CLIENT_ID: $STAGING_SHOPIFY_APP_CLIENT_ID
            MANTLE_PIXEL_TOKEN: $STAGING_MANTLE_PIXEL_TOKEN
        - if: '$CI_COMMIT_TAG'
          when: always
          variables:
            APP_ENV: "production"
            SHOPIFY_APP_CLIENT_ID: $PRODUCTION_SHOPIFY_APP_CLIENT_ID
            MANTLE_PIXEL_TOKEN: $PRODUCTION_MANTLE_PIXEL_TOKEN
    
    .template: &deploy-rules
      variables:
        RELEASE_VERSION: $CI_JOB_ID
        SHOPIFY_APP_CONFIG: "staging"
        SHOPIFY_CLI_PARTNERS_TOKEN: $STAGING_SHOPIFY_CLI_PARTNERS_TOKEN
        DEPLOY_DIR: $STAGING_DEPLOY_DIR
        DEPLOY_USER: $STAGING_DEPLOY_USER
        DEPLOY_PORT: $STAGING_DEPLOY_PORT
        DEPLOY_HOST: $STAGING_DEPLOY_HOST
      before_script:
        - if [ "$RELEASE_VERSION" == "" ]; then echo "RELEASE_VERSION is empty" ; exit 1; fi
        - if [ "$SHOPIFY_APP_CONFIG" == "" ]; then echo "SHOPIFY_APP_CONFIG is empty" ; exit 1; fi
        - if [ "$SHOPIFY_CLI_PARTNERS_TOKEN" == "" ]; then echo "SHOPIFY_CLI_PARTNERS_TOKEN is empty" ; exit 1; fi
        - if [ "$DEPLOY_DIR" == "" ]; then echo "DEPLOY_DIR is empty" ; exit 1; fi
        - if [ "$DEPLOY_USER" == "" ]; then echo "DEPLOY_USER is empty" ; exit 1; fi
        - if [ "$DEPLOY_PORT" == "" ]; then echo "DEPLOY_PORT is empty" ; exit 1; fi
        - if [ "$DEPLOY_HOST" == "" ]; then echo "DEPLOY_HOST is empty" ; exit 1; fi
        - echo $RELEASE_VERSION;
        - echo $SHOPIFY_APP_CONFIG;
        - echo $DEPLOY_DIR;
      rules:
        - if: '$CI_COMMIT_REF_NAME == "devel"'  # Automatyczne na branchu `devel`
          when: always
        - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'  # Manualne w kontekście Merge Request
          when: manual
        - if: '$CI_COMMIT_REF_NAME != "master" && $CI_COMMIT_TAG == ""'  # Manualne na innych branchach (bez `master` i tagów)
          when: manual
        - if: '$CI_COMMIT_TAG'  # Automatyczne na tagu (produkcja)
          when: always
          variables:
            RELEASE_VERSION: $CI_COMMIT_TAG
            SHOPIFY_APP_CONFIG: "production"
            SHOPIFY_CLI_PARTNERS_TOKEN: $PRODUCTION_SHOPIFY_CLI_PARTNERS_TOKEN
            DEPLOY_DIR: $PRODUCTION_DEPLOY_DIR
            DEPLOY_USER: $PRODUCTION_DEPLOY_USER
            DEPLOY_PORT: $PRODUCTION_DEPLOY_PORT
            DEPLOY_HOST: $PRODUCTION_DEPLOY_HOST
    
    build web frontend:
      <<: *build-rules
      image: node:latest
      artifacts: