name: CI / Python quality on: push: branches: [main] pull_request: branches: [main] workflow_dispatch: permissions: contents: read concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: actionlint: name: GitHub Actions runs-on: ubuntu-latest timeout-minutes: 10 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Validate workflows with actionlint env: ACTIONLINT_VERSION: 1.7.12 ACTIONLINT_SHA256: 8aca8db96f1b94770f1b0d72b6dddcb1ebb8123cb3712530b08cc387b349a3d8 run: | archive="actionlint_${ACTIONLINT_VERSION}_linux_amd64.tar.gz" curl --fail --location --proto '=https' --retry 3 --silent --show-error \ --output "${RUNNER_TEMP}/${archive}" \ "https://github.com/rhysd/actionlint/releases/download/v${ACTIONLINT_VERSION}/${archive}" echo "${ACTIONLINT_SHA256} ${RUNNER_TEMP}/${archive}" | sha256sum --check tar -xzf "${RUNNER_TEMP}/${archive}" -C "${RUNNER_TEMP}" actionlint "${RUNNER_TEMP}/actionlint" .github/workflows/*.yml pre-commit: name: Pre-commit runs-on: ubuntu-latest timeout-minutes: 30 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: persist-credentials: false - name: Setup Python uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 with: python-version: '3.11' cache: pip - name: Update setuptools run: | pip install -U setuptools wheel - name: Install run: | pip install -q -e reme_studio -e ".[dev,core]" pip install -q --no-deps -e plugins/auto-fin -e plugins/daily_paper -e plugins/lme -e plugins/beam - name: Pre-commit starts run: pre-commit run --all-files