Skip to content

install new cfl py package #1107

install new cfl py package

install new cfl py package #1107

Workflow file for this run

name: Main
on:
pull_request:
push:
paths-ignore:
- "**/*.md"
- "**/.*"
workflow_dispatch:
env:
CYPRESS_WAIT_ON: http://localhost:8000
CYPRESS_WAIT_ON_TIMEOUT: 600
CYPRESS_SPEC: cypress/e2e/**/*.cy.ts
SERVICE: portal
PYTHON_VERSION: 3.8
jobs:
test-backend:
uses: ocadotechnology/codeforlife-workspace/.github/workflows/test-python-code.yaml@main
with:
working-directory: backend
# # The below code was adapted from this documentation.
# # https://docs.cypress.io/guides/continuous-integration/github-actions#Parallelization
# # https://github.com/cypress-io/cypress-docker-images/tree/master/browsers
# test-chrome:
# runs-on: ubuntu-latest
# steps:
# - name: πŸ›« Checkout
# uses: actions/checkout@v3
# - name: 🐍 Setup Python
# uses: actions/setup-python@v4
# with:
# python-version: ${{ env.PYTHON_VERSION }}
# architecture: "x64"
# - name: πŸ§ͺ Test on Chrome
# uses: cypress-io/[email protected]
# with:
# working-directory: frontend
# #TODO: Currently using the run script for local development
# start: bash ../run
# wait-on: ${{ env.CYPRESS_WAIT_ON }}
# wait-on-timeout: ${{ env.CYPRESS_WAIT_ON_TIMEOUT }}
# browser: chrome
# record: true
# spec: ${{ env.CYPRESS_SPEC }}
# cache-key: os-${{ runner.os }}-dependencies-${{ hashFiles('yarn.lock') }}
# env:
# CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# NODE_ENV: production
# # TODO: load these from a file.
# REACT_APP_API_BASE_URL: 'http://localhost:8000/api/'
# REACT_APP_PORTAL_BASE_URL: 'http://localhost:8000'
# - name: πŸ” Report test info
# working-directory: frontend
# run: npx cypress info
# - name: πŸ” Report CPU info
# working-directory: frontend
# run: node -p 'os.cpus()'
# - name: βœ… Upload coverage to Codecov
# uses: codecov/[email protected]
# build-and-deploy:
# runs-on: ubuntu-latest
# needs: [test-chrome]
# if: github.ref_name == 'production' || github.ref_name == 'development' || github.ref_name == 'staging'
# environment: ${{ github.ref_name }}
# steps:
# - name: πŸ›« Checkout
# uses: actions/checkout@v3
# - name: 🌐 Set up Node
# uses: actions/setup-node@v3
# with:
# node-version: 18
# - name: 🐍 Set up Python
# uses: actions/setup-python@v4
# with:
# python-version: ${{ env.PYTHON_VERSION }}
# - name: πŸ— Authenticate with GCloud
# uses: google-github-actions/auth@v1
# with:
# credentials_json: ${{ secrets.GCP_CREDENTIALS }}
# - name: πŸ€– Set up GCloud SDK
# uses: google-github-actions/setup-gcloud@v1
# - name: πŸ›  Install Frontend Dependencies
# working-directory: ./frontend
# run: yarn install
# # TODO: fix dependencies and uncomment below lines
# # env:
# # NODE_ENV: production
# - name: πŸ›  Build Frontend
# working-directory: ./frontend
# run: yarn run build
# env:
# NODE_ENV: production
# - name: πŸ›  Bundle Frontend
# working-directory: ./frontend
# run: node djangoBundler.js
# env:
# NODE_ENV: production
# REACT_APP_API_BASE_URL: ${{ vars.REACT_APP_API_BASE_URL }}
# REACT_APP_PORTAL_BASE_URL: ${{ vars.REACT_APP_PORTAL_BASE_URL }}
# REACT_APP_SSO_SERVICE_NAME: ${{ vars.REACT_APP_SSO_SERVICE_NAME }}
# REACT_APP_SSO_SERVICE_PROTOCOL: 'https'
# REACT_APP_SSO_SERVICE_DOMAIN: 'codeforlife.education'
# REACT_APP_SSO_SERVICE_PORT: '443'
# - name: πŸ›  Install Backend Dependencies
# working-directory: ./backend
# run: |
# python -m pip install --upgrade pip
# python -m pip install pipenv
# pipenv install
# - name: πŸ”Ž Check Migrations
# working-directory: ./backend
# run: pipenv run python ./manage.py makemigrations --check --dry-run
# - name: πŸ›  Generate requirements.txt
# working-directory: ./backend
# run: pipenv requirements > requirements.txt
# - name: πŸ›  Collect Static Files
# working-directory: ./backend
# run: pipenv run python ./manage.py collectstatic --noinput --clear
# # https://mikefarah.gitbook.io/yq/
# - name: πŸ–ŠοΈ Configure App Deployment
# uses: mikefarah/yq@master
# with:
# cmd: |
# SERVICE_NAME=$(
# if [ ${{ github.ref_name }} == "production" ]
# then echo ${{ env.SERVICE_NAME }}
# else echo ${{ github.ref_name }}-${{ env.SERVICE_NAME }}
# fi
# )
# SERVICE_IS_ROOT=$(
# if [ ${{ github.ref_name }} == "production" ]
# then echo "1"
# else echo "0"
# fi
# )
# yq -i '
# .service = "${{ github.ref_name }}-${{ env.SERVICE }}" |
# .env_variables.SECRET_KEY = "${{ vars.SECRET_KEY }}" |
# .env_variables.SERVICE_NAME = "$SERVICE_NAME" |
# .env_variables.SERVICE_IS_ROOT = "$SERVICE_IS_ROOT" |
# .env_variables.MODULE_NAME = "${{ github.ref_name }}"
# ' backend/app.yaml
# - name: πŸš€ Deploy App on GCloud
# working-directory: ./backend
# run: gcloud app deploy