-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ci: separate smarteole_example workflow
GitHub Action Workflow to execute Smarteole example notebook and pushes a new commit on merge to main
- Loading branch information
1 parent
48ebec6
commit 59ae437
Showing
2 changed files
with
68 additions
and
17 deletions.
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
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,67 @@ | ||
name: Execute Smarteole Example notebook | ||
|
||
on: | ||
push: | ||
branches: | ||
- main | ||
paths-ignore: | ||
- 'examples/smarteole_example.ipynb' | ||
workflow_dispatch: | ||
|
||
|
||
permissions: | ||
contents: write | ||
|
||
env: | ||
BRANCH_NAME: ${{ github.head_ref || github.ref_name }} | ||
|
||
jobs: | ||
lint-and-test: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
python-version: ["3.x"] | ||
os: [ubuntu-latest] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
ref: ${{ env.BRANCH_NAME }} | ||
- name: "set up Python ${{ matrix.python-version }}" | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- uses: actions/cache@v4 | ||
id: cache-venv | ||
with: | ||
path: ./.venv/ | ||
key: ${{ matrix.python-version }}-venv-${{ hashFiles('**/pyproject.toml') }} | ||
restore-keys: | | ||
${{ matrix.python-version }}-venv | ||
- name: 'create environment and install dependencies' | ||
if: steps.cache-venv.outputs.cache-hit != 'true' | ||
run: | | ||
python -m venv .venv | ||
source .venv/bin/activate | ||
pip install .[all] | ||
- name: 'update dependencies' | ||
if: steps.cache-venv.outputs.cache-hit == 'true' | ||
run: | | ||
source .venv/bin/activate | ||
pip install -U .[all] | ||
- name: 'lint check & test' | ||
run: | | ||
source .venv/bin/activate | ||
poe lint-check | ||
poe test | ||
- name: 'execute smarteole example notebook and push changes' | ||
run: | | ||
source .venv/bin/activate | ||
poe smarteole-nb | ||
git add -A | ||
git config --local user.email "action@github.com" | ||
git config --local user.name "GitHub Action" | ||
if git status | grep -q modified; then | ||
git commit -m "Update smarteole example notebook" | ||
git push | ||
fi |