-
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Add skeleton * Fix CI * Add dummy test * More fixes * More fixes * Final tuning * Tune tested python version
- Loading branch information
1 parent
4e03306
commit dab4290
Showing
16 changed files
with
651 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
version: 2 | ||
updates: | ||
# GitHub Actions | ||
- package-ecosystem: "github-actions" | ||
directory: "/" | ||
schedule: | ||
interval: "monthly" | ||
groups: | ||
actions: | ||
patterns: | ||
- "*" | ||
# Python | ||
- package-ecosystem: "pip" | ||
directory: "/" | ||
schedule: | ||
interval: "monthly" | ||
groups: | ||
pip: | ||
patterns: | ||
- "*" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
name: Enforce PR label | ||
|
||
on: | ||
pull_request: | ||
types: [labeled, unlabeled, opened, edited, synchronize] | ||
jobs: | ||
enforce-label: | ||
runs-on: ubuntu-latest | ||
permissions: | ||
pull-requests: write | ||
steps: | ||
- name: enforce-triage-label | ||
uses: jupyterlab/maintainer-tools/.github/actions/enforce-label@v1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
name: Fix License Headers | ||
|
||
on: | ||
pull_request_target: | ||
|
||
jobs: | ||
header-license-fix: | ||
runs-on: ubuntu-latest | ||
|
||
permissions: | ||
contents: write | ||
pull-requests: write | ||
|
||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
with: | ||
token: ${{ secrets.GITHUB_TOKEN }} | ||
|
||
- name: Checkout the branch from the PR that triggered the job | ||
run: gh pr checkout ${{ github.event.pull_request.number }} | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
|
||
- name: Fix License Header | ||
# pin to include https://github.com/apache/skywalking-eyes/pull/168 | ||
uses: apache/skywalking-eyes/header@ed436a5593c63a25f394ea29da61b0ac3731a9fe | ||
with: | ||
mode: fix | ||
|
||
- name: List files changed | ||
id: files-changed | ||
shell: bash -l {0} | ||
run: | | ||
set -ex | ||
export CHANGES=$(git status --porcelain | tee /tmp/modified.log | wc -l) | ||
cat /tmp/modified.log | ||
echo "N_CHANGES=${CHANGES}" >> $GITHUB_OUTPUT | ||
git diff | ||
- name: Commit any changes | ||
if: steps.files-changed.outputs.N_CHANGES != '0' | ||
shell: bash -l {0} | ||
run: | | ||
git config user.name "github-actions[bot]" | ||
git config user.email "github-actions[bot]@users.noreply.github.com" | ||
git pull --no-tags | ||
git add * | ||
git commit -m "Automatic application of license header" | ||
git config push.default upstream | ||
git push | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
name: "Step 1: Prep Release" | ||
on: | ||
workflow_dispatch: | ||
inputs: | ||
version_spec: | ||
description: "New Version Specifier" | ||
default: "next" | ||
required: false | ||
branch: | ||
description: "The branch to target" | ||
required: false | ||
post_version_spec: | ||
description: "Post Version Specifier" | ||
required: false | ||
since: | ||
description: "Use PRs with activity since this date or git reference" | ||
required: false | ||
since_last_stable: | ||
description: "Use PRs with activity since the last stable git tag" | ||
required: false | ||
type: boolean | ||
jobs: | ||
prep_release: | ||
runs-on: ubuntu-latest | ||
permissions: | ||
contents: write | ||
steps: | ||
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 | ||
|
||
- name: Prep Release | ||
id: prep-release | ||
uses: jupyter-server/jupyter_releaser/.github/actions/prep-release@v2 | ||
with: | ||
token: ${{ secrets.GITHUB_TOKEN }} | ||
version_spec: ${{ github.event.inputs.version_spec }} | ||
silent: ${{ github.event.inputs.silent }} | ||
post_version_spec: ${{ github.event.inputs.post_version_spec }} | ||
target: ${{ github.event.inputs.target }} | ||
branch: ${{ github.event.inputs.branch }} | ||
since: ${{ github.event.inputs.since }} | ||
since_last_stable: ${{ github.event.inputs.since_last_stable }} | ||
|
||
- name: "** Next Step **" | ||
run: | | ||
echo "Optional): Review Draft Release: ${{ steps.prep-release.outputs.release_url }}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
name: "Step 2: Publish Release" | ||
on: | ||
workflow_dispatch: | ||
inputs: | ||
branch: | ||
description: "The target branch" | ||
required: false | ||
release_url: | ||
description: "The URL of the draft GitHub release" | ||
required: false | ||
steps_to_skip: | ||
description: "Comma separated list of steps to skip" | ||
required: false | ||
|
||
jobs: | ||
publish_release: | ||
runs-on: ubuntu-latest | ||
environment: release | ||
permissions: | ||
id-token: write | ||
steps: | ||
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 | ||
|
||
- uses: actions/create-github-app-token@v1 | ||
id: app-token | ||
with: | ||
app-id: ${{ vars.APP_ID }} | ||
private-key: ${{ secrets.APP_PRIVATE_KEY }} | ||
|
||
- name: Populate Release | ||
id: populate-release | ||
uses: jupyter-server/jupyter_releaser/.github/actions/populate-release@v2 | ||
with: | ||
token: ${{ steps.app-token.outputs.token }} | ||
branch: ${{ github.event.inputs.branch }} | ||
release_url: ${{ github.event.inputs.release_url }} | ||
steps_to_skip: ${{ github.event.inputs.steps_to_skip }} | ||
|
||
- name: Finalize Release | ||
id: finalize-release | ||
uses: jupyter-server/jupyter_releaser/.github/actions/finalize-release@v2 | ||
with: | ||
token: ${{ steps.app-token.outputs.token }} | ||
release_url: ${{ steps.populate-release.outputs.release_url }} | ||
|
||
- name: "** Next Step **" | ||
if: ${{ success() }} | ||
run: | | ||
echo "Verify the final release" | ||
echo ${{ steps.finalize-release.outputs.release_url }} | ||
- name: "** Failure Message **" | ||
if: ${{ failure() }} | ||
run: | | ||
echo "Failed to Publish the Draft Release Url:" | ||
echo ${{ steps.populate-release.outputs.release_url }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,153 @@ | ||
name: Jupyter Builder Tests | ||
on: | ||
push: | ||
branches: ["main"] | ||
pull_request: | ||
branches: ["main"] | ||
|
||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.ref }} | ||
cancel-in-progress: true | ||
|
||
defaults: | ||
run: | ||
shell: bash -eux {0} | ||
|
||
jobs: | ||
build: | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 20 | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, windows-latest, macos-latest] | ||
python-version: ["3.8", "3.12"] | ||
include: | ||
- os: ubuntu-latest | ||
python-version: "pypy-3.8" | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Base Setup | ||
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 | ||
- | ||
run: pip install -e ".[test,dev]" | ||
- name: Run the tests | ||
run: pytest | ||
- uses: jupyterlab/maintainer-tools/.github/actions/upload-coverage@v1 | ||
|
||
test_lint: | ||
name: Test Lint | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 | ||
- | ||
run: pip install -e ".[test,dev]" | ||
- name: Run Linters | ||
run: | | ||
python -m pre_commit run --all | ||
# FIXME Nice to activate in the future | ||
# pipx run interrogate -v . | ||
test_minimum_versions: | ||
name: Test Minimum Versions | ||
timeout-minutes: 20 | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 | ||
with: | ||
dependency_type: minimum | ||
- | ||
run: pip install -e ".[test,dev]" | ||
- name: Run the unit tests | ||
run: | | ||
pytest | ||
test_prereleases: | ||
name: Test Prereleases | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 20 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 | ||
with: | ||
dependency_type: pre | ||
- name: Run the tests | ||
run: | | ||
pip install pytest | ||
pytest | ||
make_sdist: | ||
name: Make SDist | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 10 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 | ||
- uses: jupyterlab/maintainer-tools/.github/actions/make-sdist@v1 | ||
|
||
test_sdist: | ||
runs-on: ubuntu-latest | ||
needs: [make_sdist] | ||
name: Install from SDist and Test | ||
timeout-minutes: 20 | ||
steps: | ||
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 | ||
- uses: jupyterlab/maintainer-tools/.github/actions/test-sdist@v1 | ||
with: | ||
package_spec: -vv . | ||
test_command: pip install pytest && pytest | ||
|
||
check_release: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Base Setup | ||
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 | ||
- name: Install Dependencies | ||
run: | | ||
pip install -e . | ||
- name: Check Release | ||
uses: jupyter-server/jupyter_releaser/.github/actions/check-release@v2 | ||
with: | ||
token: ${{ secrets.GITHUB_TOKEN }} | ||
|
||
check_links: | ||
name: Check Links | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 15 | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1 | ||
- uses: jupyterlab/maintainer-tools/.github/actions/check-links@v1 | ||
|
||
# FIXME to activate later | ||
# coverage: | ||
# runs-on: ubuntu-latest | ||
# needs: | ||
# - build | ||
# steps: | ||
# - uses: actions/checkout@v4 | ||
# - uses: jupyterlab/maintainer-tools/.github/actions/report-coverage@v1 | ||
# with: | ||
# fail_under: 80 | ||
|
||
tests_check: # This job does nothing and is only used for the branch protection | ||
if: always() | ||
needs: | ||
# - coverage | ||
- test_lint | ||
- test_minimum_versions | ||
- test_prereleases | ||
- check_links | ||
- check_release | ||
- test_sdist | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Decide whether the needed jobs succeeded or failed | ||
uses: re-actors/alls-green@release/v1 | ||
with: | ||
jobs: ${{ toJSON(needs) }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
header: | ||
license: | ||
spdx-id: BSD-3-Clause | ||
copyright-owner: Jupyter Development Team | ||
software-name: JupyterLab | ||
content: | | ||
Copyright (c) Jupyter Development Team. | ||
Distributed under the terms of the Modified BSD License. | ||
paths-ignore: | ||
- '**/*.ipynb' | ||
- '**/*.json' | ||
- '**/*.md' | ||
- '**/*.yml' | ||
- '**/*.yaml' | ||
- '**/build' | ||
- '**/.*' | ||
- 'LICENSE' | ||
|
||
comment: on-failure |
Oops, something went wrong.