mirror of
https://github.com/UofCBaja/BajaCloud.git
synced 2025-06-15 05:04:17 -06:00
71 lines
2.2 KiB
YAML
71 lines
2.2 KiB
YAML
|
|
# name of the workflow.
|
|
# this is optional.
|
|
name: PyLint
|
|
|
|
# events that will trigger this workflow.
|
|
# here, we only have "pull_request", so the workflow will run
|
|
# whenever we create a pull request.
|
|
# other examples: [push] and [pull_request, push]
|
|
on:
|
|
pull_request:
|
|
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
# each workflow must have at least one job.
|
|
# jobs run in parallel by default (we can change that).
|
|
# each job groups together a series of steps to accomplish a purpose.
|
|
jobs:
|
|
# name of the job
|
|
ruffLint:
|
|
# the platform or OS that the workflow will run on.
|
|
runs-on: ubuntu-latest
|
|
|
|
# series of steps to finish the job.
|
|
steps:
|
|
# name of the step.
|
|
# steps run sequentially.
|
|
# this is optionale
|
|
- name: checkout
|
|
# each step can either have "uses" or "run".
|
|
# "uses" run an action written somewhere other than this workflow .
|
|
# usually from the community.
|
|
# this action checks out the repo code to the runner (instance)
|
|
# running the action
|
|
uses: actions/checkout@v3
|
|
|
|
# another step.
|
|
# this step runs a bash (Ubuntu's default shell) command
|
|
- name: install ruff
|
|
run: pip install ruff
|
|
|
|
- name: Lint
|
|
run: ruff check ./*/*.py --ignore E402
|
|
|
|
Dockerhub:
|
|
runs-on: ubuntu-latest
|
|
needs: ruffLint # will only run if linter is successful
|
|
if: ${{ github.ref == 'refs/heads/main' || github.event.pull_request.merged == true }} # Runs if it's a push to 'main' or a merged PR to 'main'
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Login to Dockerhub # log into docker hub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKER_USERNAME }} # Using secret for Docker username
|
|
password: ${{ secrets.DOCKER_PASSWORD }} # Using secret for Docker password
|
|
id: docker-login
|
|
|
|
- name: build container image # build the container
|
|
run: docker build -t darkicewolf50/uofcbajacloud:latest
|
|
id: docker-build
|
|
|
|
- name: Upload to Dockerhub
|
|
run: docker push darkicewolf50/uofcbajacloud:latest
|
|
if: ${{ steps.docker-login.outcome == 'success' && steps.docker-build.outcome == 'success' }}
|
|
|
|
|