name: integration-tests on: schedule: - cron: 30 15 * * 0-6 push: tags-ignore: - '*.*' branches: - dev - releases/v3 jobs: # Deploys using checkout@v1 with an ACCESS_TOKEN. integration-checkout-v1: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v1 - name: Build and Deploy uses: JamesIves/github-pages-deploy-action@releases/v3 with: ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }} BRANCH: gh-pages FOLDER: integration TARGET_FOLDER: cat/montezuma GIT_CONFIG_NAME: Montezuma GIT_CONFIG_EMAIL: montezuma@jamesiv.es - name: Cleanup Generated Branch uses: dawidd6/action-delete-branch@v2.0.1 with: github_token: ${{ secrets.GITHUB_TOKEN }} branches: gh-pages # Deploys using checkout@v2 with a GITHUB_TOKEN. integration-checkout-v2: needs: integration-checkout-v1 runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 with: persist-credentials: false - name: Build and Deploy uses: JamesIves/github-pages-deploy-action@releases/v3 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages FOLDER: integration TARGET_FOLDER: cat/montezuma2 - name: Cleanup Generated Branch uses: dawidd6/action-delete-branch@v2.0.1 with: github_token: ${{ secrets.GITHUB_TOKEN }} branches: gh-pages # Deploys using a container that requires you to install rsync. integration-container: needs: integration-checkout-v2 runs-on: ubuntu-latest container: image: ruby:2.6 env: LANG: C.UTF-8 steps: - name: Checkout uses: actions/checkout@v2 with: persist-credentials: false - name: Install rsync run: | apt-get update && apt-get install -y rsync - name: Build and Deploy uses: JamesIves/github-pages-deploy-action@releases/v3 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages FOLDER: integration TARGET_FOLDER: cat/montezuma2 - name: Cleanup Generated Branch uses: dawidd6/action-delete-branch@v2.0.1 with: github_token: ${{ secrets.GITHUB_TOKEN }} branches: gh-pages # Deploys using an SSH key. integration-ssh: needs: integration-container runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 with: persist-credentials: false - name: Install SSH Client uses: webfactory/ssh-agent@v0.4.1 with: ssh-private-key: ${{ secrets.DEPLOY_KEY }} - name: Build and Deploy uses: JamesIves/github-pages-deploy-action@releases/v3 with: SSH: true BRANCH: gh-pages FOLDER: integration TARGET_FOLDER: cat/montezuma3 - name: Cleanup Generated Branch uses: dawidd6/action-delete-branch@v2.0.1 with: github_token: ${{ secrets.GITHUB_TOKEN }} branches: gh-pages # Deploys using a custom env. integration-env: needs: integration-ssh runs-on: ubuntu-latest steps: - uses: actions/setup-node@v1.4.4 with: node-version: '10.x' - name: Checkout uses: actions/checkout@v2 with: persist-credentials: false - name: Install SSH Client uses: webfactory/ssh-agent@v0.4.1 with: ssh-private-key: ${{ secrets.DEPLOY_KEY }} - name: Build and Deploy uses: JamesIves/github-pages-deploy-action@releases/v3 with: SSH: true BRANCH: gh-pages FOLDER: integration TARGET_FOLDER: cat/montezuma4 - name: Cleanup Generated Branch uses: dawidd6/action-delete-branch@v2.0.1 with: github_token: ${{ secrets.GITHUB_TOKEN }} branches: gh-pages # Deploys using the CLEAN option. integration-clean: needs: [integration-checkout-v1, integration-checkout-v2, integration-container, integration-ssh, integration-env] runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 with: persist-credentials: false - name: Build and Deploy uses: JamesIves/github-pages-deploy-action@releases/v3 with: ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }} BRANCH: gh-pages FOLDER: integration CLEAN: true # Deploys to a branch that doesn't exist with SINGLE_COMMIT. integration-branch-creation: needs: integration-clean runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 with: persist-credentials: false - name: Build and Deploy uses: JamesIves/github-pages-deploy-action@releases/v3 with: ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }} BRANCH: integration-test-delete-prod FOLDER: integration SINGLE_COMMIT: true - name: Cleanup Generated Branch uses: dawidd6/action-delete-branch@v2.0.1 with: github_token: ${{ secrets.GITHUB_TOKEN }} branches: integration-test-delete-prod