Ansys Lab #22
Workflow file for this run
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
name: Ansys Lab | |
on: | |
# Can be called by the CI | |
workflow_call: | |
inputs: | |
version: | |
description: "Release version as 'X.Y.Z'" | |
type: string | |
required: true | |
# Can be called manually | |
workflow_dispatch: | |
inputs: | |
version: | |
description: "Release version as 'X.Y.Z'" | |
type: string | |
required: true | |
env: | |
DESTINATION_BRANCH_NAME: ansys_lab_examples | |
jobs: | |
deploy_examples: | |
name: "Deploy examples for Ansys Lab" | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
ref: ${{ env.DESTINATION_BRANCH_NAME }} | |
- name: "Clean-up working directory" | |
shell: python | |
run: | | |
import glob | |
import os | |
for example in glob.glob('**/*.ipynb', recursive=True): | |
os.remove(example) | |
print(f"Deleted {example}") | |
- name: "Download Release Asset - HTML" | |
uses: dsaltares/[email protected] | |
with: | |
file: HTML-doc-ansys-dpf-core.zip | |
token: ${{ secrets.GITHUB_TOKEN }} | |
version: tags/v${{ inputs.version }} | |
- name: "Extract ipynb examples" | |
shell: python | |
run: | | |
import glob | |
import os | |
import shutil | |
import zipfile | |
with zipfile.ZipFile("HTML-doc-ansys-dpf-core.zip", 'r') as z: | |
[z.extract(file, "./") for file in z.namelist() if file.endswith(".ipynb")] | |
os.remove("HTML-doc-ansys-dpf-core.zip") | |
if not "examples" in os.listdir(os.getcwd()): | |
os.mkdir(os.path.join(os.getcwd(), "examples")) | |
print(os.listdir(os.getcwd())) | |
for folder in os.listdir(os.path.join(os.getcwd(), "_downloads")): | |
print(os.listdir(os.path.join(os.path.join(os.getcwd(), "_downloads"), folder))) | |
for example in glob.glob('**/*.ipynb', recursive=True): | |
print(f"Moving {example}") | |
shutil.move(example, os.path.join(os.getcwd(), "examples")) | |
print(os.listdir(os.path.join(os.getcwd(), "examples"))) | |
- name: "Push changes" | |
shell: bash | |
run: | | |
git config --global user.name "rlagha" | |
git add . | |
git status | |
git commit -a -m ${{ inputs.version }} | |
git push https://${{ secrets.DPF_PIPELINE }}@github.com/ansys/pydpf-core.git --follow-tags |