60 lines
2.1 KiB
YAML
60 lines
2.1 KiB
YAML
name: pipeline
|
||
run-name: ${{ gitea.actor }} is running script
|
||
runs-on: ubuntu-latest
|
||
on: [push]
|
||
image: python:3.10
|
||
jobs:
|
||
# demo:
|
||
# runs-on: ubuntu-latest
|
||
# steps:
|
||
# - run: echo "🎉 The job was automatically triggered by a ${{ gitea.event_name }} event."
|
||
# - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!"
|
||
# - run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}."
|
||
# - name: Check out repository code
|
||
# uses: actions/checkout@v3
|
||
# - run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner."
|
||
# - run: echo "🖥️ The workflow is now ready to test your code on the runner."
|
||
# - name: List files in the repository
|
||
# run: |
|
||
# ls ${{ gitea.workspace }}
|
||
# - run: echo "🍏 This job's status is ${{ job.status }}."
|
||
test:
|
||
name: Test
|
||
runs-on: ubuntu-latest
|
||
steps:
|
||
- uses: actions/checkout@v3
|
||
- name: Set up Python 3.10
|
||
uses: https://github.com/actions/setup-python@v3
|
||
with:
|
||
python-version: "3.10"
|
||
architecture: "x64"
|
||
- name: Install Packages
|
||
run: |
|
||
python -m pip install --upgrade pip
|
||
pip install flake8 mypy pytest
|
||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
|
||
- name: PEP8 check
|
||
run: |
|
||
flake8 ./code --benchmark --exit-zero
|
||
- name: Type check
|
||
run: |
|
||
mypy ./code
|
||
deploy:
|
||
name: Deploy
|
||
runs-on: ubuntu-latest
|
||
needs: [test]
|
||
if: gitea.ref == 'refs/heads/release'
|
||
env:
|
||
repository_host: 192.168.1.2:5000
|
||
repository_name: ${{ gitea.repository }}
|
||
repository_tag: latest
|
||
steps:
|
||
- uses: actions/checkout@v3
|
||
- name: Build
|
||
run: docker build . --file Dockerfile --tag ${repository_name}:${repository_tag}
|
||
- name: Tag
|
||
run: docker tag ${repository_name}:${repository_tag} ${repository_host}/${repository_name}:${repository_tag}
|
||
- name: Push
|
||
run: docker push ${repository_host}/${repository_name}:${repository_tag}
|
||
|