-
Notifications
You must be signed in to change notification settings - Fork 81
70 lines (70 loc) · 2.69 KB
/
publish-python-package.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
name: Publish Python Package
on:
push:
branches:
- master
paths-ignore:
- "CHANGELOG.md"
- "game/__init__.py"
workflow_dispatch:
jobs:
publish-pypi-packages:
name: Publish PyPi Packages
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
persist-credentials: false
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
architecture: "x64"
- name: Install pip requirements
run: |
pip install pipenv
pipenv install --dev --system
pip install -U git+https://github.com/ocadotechnology/codeforlife-portal@python312
pip install -U "git+https://github.com/ocadotechnology/codeforlife-portal@python312#egg=cfl-common&subdirectory=cfl_common"
sudo apt-get install gettext
# TODO: Restore action once we figure out how to use bot token properly (if still needed)
# - name: Prepare files for Crowdin
# run: |
# mkdir -p game/locale
# cd game && django-admin makemessages -l en_GB --no-wrap && cd -
# cd game && django-admin makemessages -l en_GB --no-wrap -d djangojs --ignore "static/game/js/foundation/*" && cd - # some files from foundation use '_' for their own purpose
# - name: Run Crowdin (Upload sources and download translations)
# uses: crowdin/github-action@v1
# with:
# upload_sources: true
# download_translations: true
# push_translations: false
# project_id: ${{ secrets.CROWDIN_PROJECT_ID }}
# token: ${{ secrets.CROWDIN_API_KEY }}
# env:
# GITHUB_TOKEN: ${{ secrets.CFL_BOT_GITHUB_TOKEN }}
# - name: Fix translation files owner
# run: sudo chown -R $USER game/locale
# - name: Compile messages
# run: |
# pushd game
# django-admin compilemessages
# popd
- name: Release rapid-router
uses: relekang/python-semantic-release@v7.34.6
with:
github_token: ${{ secrets.CFL_BOT_GITHUB_TOKEN }}
pypi_token: ${{ secrets.PYPI_TOKEN }}
- name: Trigger staging deployment
uses: actions/github-script@v6
with:
github-token: ${{ secrets.CFL_BOT_GITHUB_TOKEN }}
script: |
github.rest.actions.createWorkflowDispatch({
owner: 'ocadotechnology',
repo: 'codeforlife-deploy-appengine',
workflow_id: 'deploy_staging.yml',
ref: 'master',
});