Skip to content
This repository has been archived by the owner on Aug 9, 2024. It is now read-only.

chore: update global workflows #338

chore: update global workflows

chore: update global workflows #338

Workflow file for this run

---
name: CI
on:
pull_request:
branches: [master]
types: [opened, synchronize, reopened]
push:
branches: [master]
workflow_dispatch:
concurrency:
group: "${{ github.workflow }}-${{ github.ref }}"
cancel-in-progress: true
jobs:
setup_release:
name: Setup Release
outputs:
publish_release: ${{ steps.setup_release.outputs.publish_release }}
release_body: ${{ steps.setup_release.outputs.release_body }}
release_commit: ${{ steps.setup_release.outputs.release_commit }}
release_generate_release_notes: ${{ steps.setup_release.outputs.release_generate_release_notes }}
release_tag: ${{ steps.setup_release.outputs.release_tag }}
release_version: ${{ steps.setup_release.outputs.release_version }}
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Release
id: setup_release
uses: LizardByte/setup-release-action@v2024.714.140421
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
build:
needs:
- setup_release
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@v4
with:
path: RetroArcher-plex.bundle
- name: Set up Python
uses: LizardByte/setup-python-action@v2024.609.5111
with:
python-version: '2.7'
- name: Set up Python Dependencies
shell: bash
working-directory: RetroArcher-plex.bundle
run: |
echo "Installing Requirements"
python --version
python -m pip --no-python-version-warning --disable-pip-version-check install --upgrade pip setuptools
# install dev requirements
python -m pip install --upgrade -r requirements-dev.txt
python -m pip install --upgrade --target=./Contents/Libraries/Shared -r \
requirements.txt --no-warn-script-location
- name: Build plist
working-directory: RetroArcher-plex.bundle
env:
BUILD_VERSION: ${{ needs.setup_release.outputs.release_tag }}
run: |
python scripts/build_plist.py
- name: Test Plex Agent
# todo - replace with pytest
working-directory: RetroArcher-plex.bundle
run: |
python ./Contents/Code/__init__.py
- name: Package Release
shell: bash
run: |
7z \
"-xr!*.git*" \
"-xr!*.pyc" \
"-xr!__pycache__" \
"-xr!plexhints*" \
"-xr!RetroArcher-plex.bundle/.*" \
"-xr!RetroArcher-plex.bundle/cache.sqlite" \
"-xr!RetroArcher-plex.bundle/codecov.yml" \
"-xr!RetroArcher-plex.bundle/crowdin.yml" \
"-xr!RetroArcher-plex.bundle/DOCKER_README.md" \
"-xr!RetroArcher-plex.bundle/Dockerfile" \
"-xr!RetroArcher-plex.bundle/docs" \
"-xr!RetroArcher-plex.bundle/scripts" \
"-xr!RetroArcher-plex.bundle/tests" \
a "./RetroArcher-plex.bundle.zip" "RetroArcher-plex.bundle"
mkdir artifacts
mv ./RetroArcher-plex.bundle.zip ./artifacts/
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: RetroArcher-plex.bundle
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
path: |
${{ github.workspace }}/artifacts
- name: Create/Update GitHub Release
if: ${{ needs.setup_release.outputs.publish_release == 'true' }}
uses: LizardByte/create-release-action@v2024.614.221009
with:
allowUpdates: true
body: ${{ needs.setup_release.outputs.release_body }}
discussionCategory: announcements
generateReleaseNotes: ${{ needs.setup_release.outputs.release_generate_release_notes }}
name: ${{ needs.setup_release.outputs.release_tag }}
prerelease: true
tag: ${{ needs.setup_release.outputs.release_tag }}
token: ${{ secrets.GH_BOT_TOKEN }}