Skip to content

requirement: bump syrupy from 4.7.1 to 4.7.2 #15628

requirement: bump syrupy from 4.7.1 to 4.7.2

requirement: bump syrupy from 4.7.1 to 4.7.2 #15628

# See https://developer.github.com/v3/
# and https://help.github.com/en/actions
name: 🕵 Review app
# Run this pipeline when a label is added and when a push is made on this PR.
# `types: [ synchronize ]` targets a push event made on a PR.
on:
pull_request:
types: [ labeled, synchronize ]
concurrency:
group: ${{ github.workflow }}-${{ github.ref_name }}-${{ github.event.pull_request.number || github.sha }}
env:
CLEVER_TOOLS_DOWNLOAD_URL: https://clever-tools.clever-cloud.com/releases/latest/clever-tools-latest_linux.tar.gz
CLEVER_TAR_FILE: clever-tools-latest_linux.tar.gz
CLEVER_CLI: clever-tools-latest_linux/clever
CLEVER_TOKEN: ${{ secrets.CLEVER_TOKEN }}
CLEVER_SECRET: ${{ secrets.CLEVER_SECRET }}
BRANCH: ${{ github.head_ref }}
jobs:
create:
runs-on: ubuntu-latest
if: github.event.action == 'labeled' && github.event.label.name == '1-recette-jetable'
steps:
- name: 📥 Checkout to the PR branch
uses: actions/checkout@v4.2.0
with:
ref: ${{ github.head_ref }}
- name: 📥 Fetch git branches
run: git fetch --prune --unshallow
# Environment variables
- name: 🏷 Set review app name
run:
echo "REVIEW_APP_NAME=`echo \"c1-review-$BRANCH\" | sed -r 's/[-;\\/._]+/-/g'`" >> $GITHUB_ENV
- name: 🏷 Set database addon name
run:
echo "REVIEW_APP_DB_NAME=`echo $REVIEW_APP_NAME | sed -r 's/-/_/g'`" >> $GITHUB_ENV
- name: 🏷 Set deploy url
run:
# The maximum length of a domain label (part of domain name separated
# by dot) is 63 characters.
# https://datatracker.ietf.org/doc/html/rfc1035#section-2.3.4
echo "DEPLOY_URL=`echo \"${REVIEW_APP_NAME::63}.cleverapps.io\"`" >> $GITHUB_ENV
# End of environment variables
- name: 🧫 Create a review app on Clever Cloud
run: |
curl $CLEVER_TOOLS_DOWNLOAD_URL > $CLEVER_TAR_FILE
tar -xvf $CLEVER_TAR_FILE
echo "Clever CLI version: $($CLEVER_CLI version)"
$CLEVER_CLI login --token $CLEVER_TOKEN --secret $CLEVER_SECRET
$CLEVER_CLI create $REVIEW_APP_NAME -t python --org itou_review_apps --region par --alias $REVIEW_APP_NAME
$CLEVER_CLI link $REVIEW_APP_NAME --org itou_review_apps
$CLEVER_CLI domain add $DEPLOY_URL --alias $REVIEW_APP_NAME
- name: 🗃 Create database addon
run: |
$CLEVER_CLI addon create postgresql-addon $REVIEW_APP_DB_NAME --org itou_review_apps --plan xxs_sml --yes --addon-version 15 --option direct-host-only=true
$CLEVER_CLI service link-addon $REVIEW_APP_DB_NAME
- name: 🤝 Link addons & add environment variables
run: |
$CLEVER_CLI link $REVIEW_APP_NAME --org itou_review_apps
$CLEVER_CLI env set ITOU_ENVIRONMENT "REVIEW-APP"
$CLEVER_CLI env set S3_STORAGE_BUCKET_NAME $REVIEW_APP_NAME
$CLEVER_CLI env set ITOU_FQDN $DEPLOY_URL
$CLEVER_CLI service link-addon c1-s3
$CLEVER_CLI service link-addon c1-deployment-config
$CLEVER_CLI service link-addon c1-redis
# CC_PYTHON_VERSION=3 is set by default when creating the app
# but we want to use the one from c1-deployment-config
$CLEVER_CLI env rm CC_PYTHON_VERSION
- name: 🚀 Deploy to Clever Cloud
timeout-minutes: 15
run: |
$CLEVER_CLI link $REVIEW_APP_NAME --org itou_review_apps
until $CLEVER_CLI env | grep --quiet POSTGRESQL_ADDON_DIRECT_PORT
do
echo "Waiting for POSTGRESQL_ADDON_DIRECT_HOST/PORT env variables to be available"
sleep 1
done
scripts/clever-deploy --clever-cli "$CLEVER_CLI" --branch "$BRANCH" --app-alias "$REVIEW_APP_NAME"
- name: 🍻 Add link to pull request
uses: thollander/actions-comment-pull-request@v2.5.0
with:
message: |-
🥁 La recette jetable est prête ! [👉 Je veux tester cette PR !](https://${{ env.DEPLOY_URL }})
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
redeploy:
runs-on: ubuntu-latest
# A push event targets a new deployment.
if: github.event.action == 'synchronize' && contains( github.event.pull_request.labels.*.name, '1-recette-jetable')
steps:
- name: 📥 Checkout to the PR branch
uses: actions/checkout@v4.2.0
with:
ref: ${{ github.head_ref }}
- name: 📥 Fetch git branches
run: git fetch --prune --unshallow
- name: 🏷 Set review app name
run:
echo "REVIEW_APP_NAME=`echo \"c1-review-$BRANCH\" | sed -r 's/[-;\\/._]+/-/g'`" >> $GITHUB_ENV
- name: 🤝 Find the application on Clever Cloud
run: |
curl $CLEVER_TOOLS_DOWNLOAD_URL > $CLEVER_TAR_FILE
tar -xvf $CLEVER_TAR_FILE
echo "Clever CLI version: $($CLEVER_CLI version)"
$CLEVER_CLI login --token $CLEVER_TOKEN --secret $CLEVER_SECRET
$CLEVER_CLI link $REVIEW_APP_NAME --org itou_review_apps
- name: ⏭ Skip fixtures
run:
$CLEVER_CLI env set SKIP_FIXTURES true
- name: 🚀 Deploy to Clever Cloud
timeout-minutes: 15
run: scripts/clever-deploy --clever-cli "$CLEVER_CLI" --branch "$BRANCH" --app-alias "$REVIEW_APP_NAME"