ansys-saf-cli 4.1.dev0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ansys/saf/cli/__init__.py +15 -0
- ansys/saf/cli/_cli/__init__.py +15 -0
- ansys/saf/cli/_cli/main.py +816 -0
- ansys/saf/cli/_cli/py.typed +0 -0
- ansys/saf/cli/_config/__init__.py +15 -0
- ansys/saf/cli/_config/const.py +45 -0
- ansys/saf/cli/_config/py.typed +0 -0
- ansys/saf/cli/_database/__init__.py +15 -0
- ansys/saf/cli/_database/manager.py +94 -0
- ansys/saf/cli/_database/models.py +53 -0
- ansys/saf/cli/_database/py.typed +0 -0
- ansys/saf/cli/_solutions/__init__.py +15 -0
- ansys/saf/cli/_solutions/add_step.py +256 -0
- ansys/saf/cli/_solutions/dependencies.py +162 -0
- ansys/saf/cli/_solutions/environment.py +1145 -0
- ansys/saf/cli/_solutions/plugins.py +254 -0
- ansys/saf/cli/_solutions/py.typed +0 -0
- ansys/saf/cli/_solutions/scaffolding.py +73 -0
- ansys/saf/cli/_solutions/templates/__init__.py +15 -0
- ansys/saf/cli/_solutions/templates/py.typed +0 -0
- ansys/saf/cli/_solutions/templates/solution/cookiecutter.json +18 -0
- ansys/saf/cli/_solutions/templates/solution/hooks/post_gen_project.py +54 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.codespell.ignore +2 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.devcontainer/devcontainer.json +26 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.env +5 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.flake8 +8 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.github/labeler.yml +9 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.github/labels.yml +27 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.github/workflows/build-release.yml +175 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.github/workflows/label.yml +89 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.gitignore +137 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.pre-commit-config.yaml +48 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.release-please-manifest.json +3 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.reuse/templates/copyright.jinja2 +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.vscode/extensions.json +8 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/.vscode/launch.json +28 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/AUTHORS +12 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/CHANGELOG.md +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/CODEOWNERS +3 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/CODE_OF_CONDUCT.md +65 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/CONTRIBUTING.md +2 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/CONTRIBUTORS.md +9 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/LICENSE.rst +41 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/README.md +69 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/deployments/Dockerfile +43 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/deployments/README.md +13 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/deployments/distributed-deployment-template/.env +27 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/deployments/distributed-deployment-template/compose.yaml +132 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/deployments/standalone/.env +20 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/deployments/standalone/compose.yaml +118 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/deployments/standalone-with-hps/.env +28 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/deployments/standalone-with-hps/compose.yaml +146 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/deployments/standalone-with-minerva/.env +25 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/deployments/standalone-with-minerva/compose.yaml +122 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/.vale.ini +28 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/Makefile +30 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/changelog.d/changelog_template.jinja +17 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/make.bat +46 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/_static/css/custom.css +8 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/_static/images/repository-banner.png +0 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/_templates/README.md +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/changelog.rst +12 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/conf.py +253 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/examples.rst +8 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/getting_started/desktop_installation.rst +165 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/getting_started/docker_installation.rst +68 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/index.rst +51 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/user_guide/index.rst +6 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/styles/config/vocabularies/ANSYS/accept.txt +5 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/styles/config/vocabularies/ANSYS/reject.txt +0 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/examples/README.md +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/lock_files/dash/poetry.lock +7621 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/lock_files/no_ui/poetry.lock +7173 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/minerva/cli/README.md +3 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/minerva/oauth/App_Data/Certificates/README.md +3 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/minerva/oauth/oauth.config +9 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/pyproject.toml +192 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/release-please-config.json +9 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/sonar-project.properties +12 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/__init__.py +3 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/main.py +19 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/portal_assets/application.svg +36 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/portal_assets/description.json +3 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/portal_assets/project.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/solution/definition.py +24 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/solution/first_step.py +34 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/solution/method_assets/README.md +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/solution/scripts/README.md +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/solution/scripts/assets/README.md +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/solution/second_step.py +12 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/app.py +30 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/css/all.css +9 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/css/bootstrap.min.css +6 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/css/style.css +47 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/dark/carbon--ibm-engineering-workflow-mgmt.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/dark/carbon--return.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/dark/game-icons--crossed-air-flows.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/dark/material-symbols--home.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/dark/radix-icons--moon.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/dark/radix-icons--sun.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/dark/streamline--startup-solid.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/dark/teenyicons--doc-solid.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/light/carbon--ibm-engineering-workflow-mgmt.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/light/carbon--return.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/light/game-icons--crossed-air-flows.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/light/material-symbols--home.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/light/radix-icons--moon.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/light/radix-icons--sun.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/light/streamline--startup-solid.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/icons/light/teenyicons--doc-solid.svg +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/images/README.md +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/images/workflow-placeholder.png +0 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/installer/README.md +5 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/logos/dark/placeholder_logo.png +0 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/logos/light/placeholder_logo.png +0 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/orchestrator/README.md +3 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/pywebview/README.md +3 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/assets/scripts/README.md +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/components/README.md +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/pages/about_page.py +71 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/pages/first_page.py +147 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/pages/page.py +367 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/src/{{ cookiecutter.__solution_namespace_path }}/{{cookiecutter.__solution_module_name}}/ui/pages/second_page.py +32 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/tests/common_test_files/README.md +1 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/tests/conftest.py +37 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/tests/unit/test_solution_api.py +42 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/tests/unit/test_solution_ui.py +30 -0
- ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/tox.ini +56 -0
- ansys/saf/cli/_utilities/__init__.py +15 -0
- ansys/saf/cli/_utilities/archiver.py +67 -0
- ansys/saf/cli/_utilities/backup.py +181 -0
- ansys/saf/cli/_utilities/conversion.py +64 -0
- ansys/saf/cli/_utilities/platform.py +26 -0
- ansys/saf/cli/_utilities/py.typed +0 -0
- ansys/saf/cli/_utilities/solution_modules.py +173 -0
- ansys/saf/cli/integrations/solutions_manager.py +64 -0
- ansys/saf/cli/py.typed +0 -0
- ansys_saf_cli-4.1.dev0.dist-info/METADATA +201 -0
- ansys_saf_cli-4.1.dev0.dist-info/RECORD +143 -0
- ansys_saf_cli-4.1.dev0.dist-info/WHEEL +4 -0
- ansys_saf_cli-4.1.dev0.dist-info/entry_points.txt +3 -0
- ansys_saf_cli-4.1.dev0.dist-info/licenses/AUTHORS +12 -0
- ansys_saf_cli-4.1.dev0.dist-info/licenses/LICENSE +201 -0
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
name: {{ cookiecutter.__docker_name }}
|
|
2
|
+
|
|
3
|
+
networks:
|
|
4
|
+
{{ cookiecutter.__docker_name }}-internal:
|
|
5
|
+
internal: true
|
|
6
|
+
{{ cookiecutter.__docker_name }}-external:
|
|
7
|
+
driver: bridge
|
|
8
|
+
|
|
9
|
+
services:
|
|
10
|
+
{{ cookiecutter.__docker_name }}-postgresql:
|
|
11
|
+
image: postgres:16.0
|
|
12
|
+
networks:
|
|
13
|
+
- {{ cookiecutter.__docker_name }}-internal
|
|
14
|
+
environment:
|
|
15
|
+
- POSTGRES_USER=glow
|
|
16
|
+
- POSTGRES_PASSWORD=glow
|
|
17
|
+
healthcheck:
|
|
18
|
+
test: [ "CMD", "pg_isready", "-U", "glow" ]
|
|
19
|
+
interval: 5s
|
|
20
|
+
retries: 20
|
|
21
|
+
volumes:
|
|
22
|
+
- {{ cookiecutter.__docker_name }}-database:/var/lib/postgresql/data
|
|
23
|
+
|
|
24
|
+
{{ cookiecutter.__docker_name }}-api:
|
|
25
|
+
image: {{ cookiecutter.__docker_name }}-api
|
|
26
|
+
build:
|
|
27
|
+
context: ../../
|
|
28
|
+
dockerfile: deployments/Dockerfile
|
|
29
|
+
target: solution_api
|
|
30
|
+
depends_on:
|
|
31
|
+
{{ cookiecutter.__docker_name }}-postgresql:
|
|
32
|
+
condition: service_healthy
|
|
33
|
+
networks:
|
|
34
|
+
- {{ cookiecutter.__docker_name }}-external
|
|
35
|
+
- {{ cookiecutter.__docker_name }}-internal
|
|
36
|
+
env_file:
|
|
37
|
+
- .env
|
|
38
|
+
init: true # to ensure reaping of killed child processes left by long-running transactions
|
|
39
|
+
environment:
|
|
40
|
+
- GLOW_API_HOST=0.0.0.0
|
|
41
|
+
- GLOW_API_PORT=50000
|
|
42
|
+
- GLOW_DATABASE_TYPE=postgresql
|
|
43
|
+
- GLOW_DATABASE_LOCATION=postgresql://glow:glow@{{ cookiecutter.__docker_name }}-postgresql:5432
|
|
44
|
+
- GLOW_PROJECT_FILES_DIRECTORY=/projects
|
|
45
|
+
- GLOW_METHOD_EXECUTION_DIRECTORY=/transactions
|
|
46
|
+
- GLOW_EXTERNAL_API_URL=http://127.0.0.1:${GLOW_API_CONTAINER_PORT}
|
|
47
|
+
- OTEL_EXPORTER_OTLP_ENDPOINT=${OTEL_EXPORTER_OTLP_ENDPOINT}
|
|
48
|
+
- GLOW_DATA_REPOSITORY_TYPE=Minerva
|
|
49
|
+
- ANS_MINERVA_CLI=/usr/local/share/minerva/cli/AnsysMinerva_CLI
|
|
50
|
+
ports:
|
|
51
|
+
- ${GLOW_API_CONTAINER_PORT}:50000
|
|
52
|
+
healthcheck:
|
|
53
|
+
test: [ "CMD", "curl", "-f", "http://localhost:50000/health" ]
|
|
54
|
+
interval: 5s
|
|
55
|
+
retries: 20
|
|
56
|
+
volumes:
|
|
57
|
+
- ${GLOW_PROJECTS_DIR_SOLUTION}:/projects
|
|
58
|
+
- ${GLOW_TRANSACTIONS_DIR_SOLUTION}:/transactions
|
|
59
|
+
develop:
|
|
60
|
+
watch:
|
|
61
|
+
- action: sync+restart
|
|
62
|
+
path: /src/{{ cookiecutter.__solution_namespace_path }}/{{ cookiecutter.__solution_module_name }}/solution
|
|
63
|
+
target: /app/src/{{ cookiecutter.__solution_namespace_path }}/{{ cookiecutter.__solution_module_name }}/solution
|
|
64
|
+
|
|
65
|
+
{% if cookiecutter.__ui_framework != "none" %}
|
|
66
|
+
|
|
67
|
+
{{ cookiecutter.__docker_name }}-ui:
|
|
68
|
+
image: {{ cookiecutter.__docker_name }}-ui
|
|
69
|
+
build:
|
|
70
|
+
context: ../../
|
|
71
|
+
dockerfile: deployments/Dockerfile
|
|
72
|
+
target: solution_ui
|
|
73
|
+
depends_on:
|
|
74
|
+
{{ cookiecutter.__docker_name }}-api:
|
|
75
|
+
condition: service_healthy
|
|
76
|
+
networks:
|
|
77
|
+
- {{ cookiecutter.__docker_name }}-external
|
|
78
|
+
env_file:
|
|
79
|
+
- .env
|
|
80
|
+
environment:
|
|
81
|
+
- GLOW_DEPLOYMENT=DockerCompose
|
|
82
|
+
- GLOW_UI_HOST=0.0.0.0
|
|
83
|
+
- GLOW_UI_PORT=50001
|
|
84
|
+
- GLOW_API_URL=http://{{ cookiecutter.__docker_name }}-api:50000
|
|
85
|
+
- GLOW_UI_PROJECT_FILES_DIRECTORY=/projects
|
|
86
|
+
- GLOW_WS_EVENTS_ADDR=127.0.0.1:${GLOW_API_CONTAINER_PORT}
|
|
87
|
+
- GLOW_EXTERNAL_API_URL=http://127.0.0.1:${GLOW_API_CONTAINER_PORT}
|
|
88
|
+
- GLOW_DATA_REPOSITORY_TYPE=Minerva
|
|
89
|
+
- ANS_MINERVA_CLI=/usr/local/share/minerva/cli/AnsysMinerva_CLI
|
|
90
|
+
ports:
|
|
91
|
+
- ${GLOW_UI_CONTAINER_PORT}:50001
|
|
92
|
+
healthcheck:
|
|
93
|
+
test: [ "CMD", "curl", "-f", "http://localhost:50001/health" ]
|
|
94
|
+
interval: 5s
|
|
95
|
+
retries: 20
|
|
96
|
+
volumes:
|
|
97
|
+
- ${GLOW_PROJECTS_DIR_SOLUTION}:/projects
|
|
98
|
+
develop:
|
|
99
|
+
watch:
|
|
100
|
+
- action: sync+restart
|
|
101
|
+
path: /src/{{ cookiecutter.__solution_namespace_path }}/{{ cookiecutter.__solution_module_name }}/ui
|
|
102
|
+
target: /app/src/{{ cookiecutter.__solution_namespace_path }}/{{ cookiecutter.__solution_module_name }}/ui
|
|
103
|
+
|
|
104
|
+
{% endif %}
|
|
105
|
+
|
|
106
|
+
otel-dashboard:
|
|
107
|
+
image: mcr.microsoft.com/dotnet/aspire-dashboard:9.1.0
|
|
108
|
+
ports:
|
|
109
|
+
- 18888:18888 # UI
|
|
110
|
+
- 18889:18889 # OTLP gRPC
|
|
111
|
+
- 18890:18890 # OTLP HTTP
|
|
112
|
+
environment:
|
|
113
|
+
- DASHBOARD__OTLP__AUTHMODE=ApiKey
|
|
114
|
+
# !!! Important !!! For production, replace the following env var with secure values
|
|
115
|
+
# as described here: https://aspire.dev/dashboard/security-considerations/
|
|
116
|
+
- DASHBOARD__FRONTEND__AUTHMODE=Unsecured
|
|
117
|
+
- DASHBOARD__OTLP__PRIMARYAPIKEY=YOU_MUST_GENERATE_A_RANDOM_STRING_AND_REPLACE_THIS
|
|
118
|
+
networks:
|
|
119
|
+
- {{ cookiecutter.__docker_name }}-external
|
|
120
|
+
|
|
121
|
+
volumes:
|
|
122
|
+
{{ cookiecutter.__docker_name }}-database:
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Core settings
|
|
2
|
+
# =============
|
|
3
|
+
|
|
4
|
+
# Location of our `styles`
|
|
5
|
+
StylesPath = "styles"
|
|
6
|
+
|
|
7
|
+
# The options are `suggestion`, `warning`, or `error` (defaults to “warning”).
|
|
8
|
+
MinAlertLevel = error
|
|
9
|
+
|
|
10
|
+
# By default, `code` and `tt` are ignored.
|
|
11
|
+
IgnoredScopes = code, tt
|
|
12
|
+
|
|
13
|
+
# By default, `script`, `style`, `pre`, and `figure` are ignored.
|
|
14
|
+
SkippedScopes = script, style, pre, figure
|
|
15
|
+
|
|
16
|
+
# WordTemplate specifies what Vale will consider to be an individual word.
|
|
17
|
+
WordTemplate = \b(?:%s)\b
|
|
18
|
+
|
|
19
|
+
# List of Packages to be used for our guidelines
|
|
20
|
+
Packages = Google
|
|
21
|
+
|
|
22
|
+
# Define the Ansys vocabulary
|
|
23
|
+
Vocab = ANSYS
|
|
24
|
+
|
|
25
|
+
# Apply styles to documentation files
|
|
26
|
+
[*.{md,rst}]
|
|
27
|
+
BasedOnStyles = Vale, Google
|
|
28
|
+
Vale.Terms = NO
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Minimal makefile for Sphinx documentation
|
|
2
|
+
#
|
|
3
|
+
|
|
4
|
+
# You can set these variables from the command line.
|
|
5
|
+
SPHINXOPTS = -j auto -W --color --keep-going
|
|
6
|
+
SPHINXBUILD = sphinx-build
|
|
7
|
+
SOURCEDIR = source
|
|
8
|
+
BUILDDIR = _build
|
|
9
|
+
|
|
10
|
+
# Put it first so that "make" without argument is like "make help".
|
|
11
|
+
help:
|
|
12
|
+
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
13
|
+
|
|
14
|
+
.PHONY: help Makefile
|
|
15
|
+
|
|
16
|
+
# Catch-all target: route all unknown targets to Sphinx using the new
|
|
17
|
+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
|
|
18
|
+
%: Makefile
|
|
19
|
+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# Customized clean due to examples gallery
|
|
23
|
+
clean:
|
|
24
|
+
rm -rf $(BUILDDIR)/*
|
|
25
|
+
rm -rf $(SOURCEDIR)/examples
|
|
26
|
+
find . -type d -name "_autosummary" -exec rm -rf {} +
|
|
27
|
+
|
|
28
|
+
# Customized pdf for svg format images
|
|
29
|
+
pdf:
|
|
30
|
+
@echo "PDF generation is not implemented"
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{{ '{% if sections[""] %}' }}
|
|
2
|
+
{{ '{% for category, val in definitions.items() if category in sections[""] %}' }}
|
|
3
|
+
|
|
4
|
+
{{ "{{ definitions[category]['name'] }}" }}
|
|
5
|
+
{{ "{% set underline = '^' * definitions[category]['name']|length %}" }}
|
|
6
|
+
{{ '{{ underline }}' }}
|
|
7
|
+
|
|
8
|
+
{{ '{% for text, values in sections[""][category].items() %}' }}
|
|
9
|
+
- {{ '{{ text }}' }} {{ "{{ values|join(', ') }}" }}
|
|
10
|
+
{{ '{% endfor %}' }}
|
|
11
|
+
|
|
12
|
+
{{ '{% endfor %}' }}
|
|
13
|
+
{{ '{% else %}' }}
|
|
14
|
+
No significant changes.
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
{{ '{% endif %}' }}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
@ECHO OFF
|
|
2
|
+
|
|
3
|
+
pushd %~dp0
|
|
4
|
+
|
|
5
|
+
REM Command file for Sphinx documentation
|
|
6
|
+
|
|
7
|
+
if "%SPHINXBUILD%" == "" (
|
|
8
|
+
set SPHINXBUILD=sphinx-build
|
|
9
|
+
)
|
|
10
|
+
set SOURCEDIR=source
|
|
11
|
+
set BUILDDIR=_build
|
|
12
|
+
|
|
13
|
+
if "%1" == "" goto help
|
|
14
|
+
if "%1" == "clean" goto clean
|
|
15
|
+
if "%1" == "pdf" goto pdf
|
|
16
|
+
|
|
17
|
+
%SPHINXBUILD% >NUL 2>NUL
|
|
18
|
+
if errorlevel 9009 (
|
|
19
|
+
echo.
|
|
20
|
+
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
|
|
21
|
+
echo.installed, then set the SPHINXBUILD environment variable to point
|
|
22
|
+
echo.to the full path of the 'sphinx-build' executable. Alternatively you
|
|
23
|
+
echo.may add the Sphinx directory to PATH.
|
|
24
|
+
echo.
|
|
25
|
+
echo.If you don't have Sphinx installed, grab it from
|
|
26
|
+
echo.http://sphinx-doc.org/
|
|
27
|
+
exit /b 1
|
|
28
|
+
)
|
|
29
|
+
|
|
30
|
+
%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
|
|
31
|
+
goto end
|
|
32
|
+
|
|
33
|
+
:pdf
|
|
34
|
+
echo PDF generation is not implemented yet.
|
|
35
|
+
goto end
|
|
36
|
+
|
|
37
|
+
:clean
|
|
38
|
+
rmdir /s /q %BUILDDIR% > /NUL 2>&1
|
|
39
|
+
for /d /r %SOURCEDIR% %%d in (_autosummary) do @if exist "%%d" rmdir /s /q "%%d"
|
|
40
|
+
goto end
|
|
41
|
+
|
|
42
|
+
:help
|
|
43
|
+
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
|
|
44
|
+
|
|
45
|
+
:end
|
|
46
|
+
popd
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
## Contains templates for the documentation build
|
ansys/saf/cli/_solutions/templates/solution/{{cookiecutter.__solution_name}}/doc/source/conf.py
ADDED
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
# Copyright (C) 2023 - 2026 ANSYS, Inc. and/or its affiliates.
|
|
2
|
+
|
|
3
|
+
"""Sphinx documentation configuration file."""
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
from datetime import datetime
|
|
7
|
+
import os
|
|
8
|
+
from pathlib import Path
|
|
9
|
+
|
|
10
|
+
from ansys_sphinx_theme import ansys_favicon, get_version_match
|
|
11
|
+
from sphinx.builders.latex import LaTeXBuilder
|
|
12
|
+
import toml
|
|
13
|
+
|
|
14
|
+
BRANCH = "main"
|
|
15
|
+
ORGANIZATION_NAME = "ansys"
|
|
16
|
+
DOC_PATH = "doc/source"
|
|
17
|
+
|
|
18
|
+
# ---------- // Project Information // --------------------------------------------------------------------------------
|
|
19
|
+
|
|
20
|
+
LaTeXBuilder.supported_image_types = ["image/png", "image/pdf", "image/svg+xml"]
|
|
21
|
+
configuration_file = Path(__file__).parent.parent.parent.absolute() / "pyproject.toml"
|
|
22
|
+
if configuration_file.exists():
|
|
23
|
+
configuration = toml.load(configuration_file)
|
|
24
|
+
else:
|
|
25
|
+
raise FileNotFoundError("No configuration file at project's root.")
|
|
26
|
+
|
|
27
|
+
project_name = project = configuration.get("tool", {}).get("poetry", {}).get("name", None)
|
|
28
|
+
package_version = configuration.get("tool", {}).get("poetry", {}).get("version", None)
|
|
29
|
+
cname = os.getenv("DOCUMENTATION_CNAME")
|
|
30
|
+
repository_name = os.getenv("REPOSITORY_NAME")
|
|
31
|
+
|
|
32
|
+
copyright = f"(c) {datetime.now().year} ANSYS, Inc. All rights reserved"
|
|
33
|
+
author = "ANSYS Inc."
|
|
34
|
+
switcher_version = get_version_match(package_version)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
# ---------- // General configuration // ------------------------------------------------------------------------------
|
|
38
|
+
|
|
39
|
+
extensions = [
|
|
40
|
+
"sphinx.ext.autodoc",
|
|
41
|
+
"sphinx.ext.autosummary",
|
|
42
|
+
"numpydoc",
|
|
43
|
+
"sphinx.ext.intersphinx",
|
|
44
|
+
"sphinx_copybutton",
|
|
45
|
+
"sphinx_code_tabs",
|
|
46
|
+
"sphinx.ext.todo",
|
|
47
|
+
"sphinxcontrib.autodoc_pydantic",
|
|
48
|
+
"sphinx_design",
|
|
49
|
+
]
|
|
50
|
+
|
|
51
|
+
# Intersphinx mapping
|
|
52
|
+
intersphinx_mapping = {
|
|
53
|
+
"python": ("https://docs.python.org/dev", None),
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
# pydantic configuration
|
|
57
|
+
autodoc_pydantic_model_show_json = False
|
|
58
|
+
autodoc_pydantic_model_show_config = False
|
|
59
|
+
autodoc_pydantic_settings_show_json = False
|
|
60
|
+
autodoc_pydantic_model_show_validator_members = False
|
|
61
|
+
autodoc_pydantic_model_show_validator_summary = False
|
|
62
|
+
|
|
63
|
+
suppress_warnings = ["label.*"]
|
|
64
|
+
|
|
65
|
+
# numpydoc configuration
|
|
66
|
+
numpydoc_use_plots = True
|
|
67
|
+
numpydoc_show_class_members = False
|
|
68
|
+
numpydoc_xref_param_type = True
|
|
69
|
+
numpydoc_validate = True
|
|
70
|
+
numpydoc_validation_checks = {
|
|
71
|
+
"GL06", # Found unknown section
|
|
72
|
+
"GL07", # Sections are in the wrong order.
|
|
73
|
+
"GL08", # The object does not have a docstring
|
|
74
|
+
"GL09", # Deprecation warning should precede extended summary
|
|
75
|
+
"GL10", # reST directives {directives} must be followed by two colons
|
|
76
|
+
"SS01", # No summary found
|
|
77
|
+
"SS02", # Summary does not start with a capital letter
|
|
78
|
+
# "SS03", # Summary does not end with a period
|
|
79
|
+
"SS04", # Summary contains heading whitespaces
|
|
80
|
+
# "SS05", # Summary must start with infinitive verb, not third person
|
|
81
|
+
"RT02", # The first line of the Returns section should contain only the
|
|
82
|
+
# type, unless multiple values are being returned"
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
# Favicon
|
|
86
|
+
html_favicon = ansys_favicon
|
|
87
|
+
|
|
88
|
+
# notfound.extension
|
|
89
|
+
notfound_template = "404.rst"
|
|
90
|
+
notfound_urls_prefix = "/../"
|
|
91
|
+
|
|
92
|
+
# static path
|
|
93
|
+
html_static_path = ["_static"]
|
|
94
|
+
|
|
95
|
+
html_css_files = ["css/custom.css"]
|
|
96
|
+
|
|
97
|
+
# Add any paths that contain templates here, relative to this directory.
|
|
98
|
+
templates_path = ["_templates"]
|
|
99
|
+
|
|
100
|
+
# The suffix(es) of source filenames.
|
|
101
|
+
source_suffix = ".rst"
|
|
102
|
+
|
|
103
|
+
# The master toctree document.
|
|
104
|
+
master_doc = "index"
|
|
105
|
+
|
|
106
|
+
# The language for content autogenerated by Sphinx. Refer to documentation
|
|
107
|
+
# for a list of supported languages.
|
|
108
|
+
#
|
|
109
|
+
# This is also used if you do content translation via gettext catalogs.
|
|
110
|
+
# Usually you set "language" from the command line for these cases.
|
|
111
|
+
language = "en"
|
|
112
|
+
|
|
113
|
+
# List of patterns, relative to source directory, that match files and
|
|
114
|
+
# directories to ignore when looking for source files.
|
|
115
|
+
# This pattern also affects html_static_path and html_extra_path.
|
|
116
|
+
exclude_patterns = [
|
|
117
|
+
"_build",
|
|
118
|
+
"Thumbs.db",
|
|
119
|
+
".DS_Store",
|
|
120
|
+
"links.rst",
|
|
121
|
+
"substitutions.rst",
|
|
122
|
+
]
|
|
123
|
+
|
|
124
|
+
# If true, `todo` and `todoList` produce output, else they produce nothing.
|
|
125
|
+
todo_include_todos = False
|
|
126
|
+
|
|
127
|
+
autodoc_mock_imports = ["ansys.platform", "opentelemetry"]
|
|
128
|
+
numfig = True
|
|
129
|
+
numfig_secnum_depth = 1
|
|
130
|
+
numfig_format = {
|
|
131
|
+
"figure": "Figure %s ",
|
|
132
|
+
"table": "Table %s ",
|
|
133
|
+
"code-block": "Code sample %s ",
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
# ---------- // Copy button customization // --------------------------------------------------------------------------
|
|
137
|
+
|
|
138
|
+
# exclude traditional Python prompts from the copied code
|
|
139
|
+
copybutton_prompt_text = r">>> ?|\.\.\. "
|
|
140
|
+
copybutton_prompt_is_regexp = True
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
# ---------- // Sphinx Gallery Options // -----------------------------------------------------------------------------
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
# ---------- // Options for HTML output // ----------------------------------------------------------------------------
|
|
147
|
+
|
|
148
|
+
html_short_title = html_title = "Ansys Solutions A"
|
|
149
|
+
html_theme = "ansys_sphinx_theme"
|
|
150
|
+
html_theme_options = {
|
|
151
|
+
"logo": "ansys",
|
|
152
|
+
"show_prev_next": False,
|
|
153
|
+
"show_breadcrumbs": True,
|
|
154
|
+
"collapse_navigation": True,
|
|
155
|
+
"use_edit_page_button": False,
|
|
156
|
+
"additional_breadcrumbs": [
|
|
157
|
+
("Ansys", "https://github.com/ansys"),
|
|
158
|
+
],
|
|
159
|
+
"check_switcher": False,
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
rst_epilog = f"""
|
|
163
|
+
.. |version| replace:: v{package_version}
|
|
164
|
+
"""
|
|
165
|
+
|
|
166
|
+
if cname and switcher_version:
|
|
167
|
+
html_theme_options["switcher"] = (
|
|
168
|
+
{
|
|
169
|
+
"json_url": f"https://{cname}/versions.json",
|
|
170
|
+
"version_match": switcher_version,
|
|
171
|
+
},
|
|
172
|
+
)
|
|
173
|
+
|
|
174
|
+
if str(os.getenv("DISABLE_GITHUB_URL_LINK")).lower() != "true" and repository_name:
|
|
175
|
+
html_theme_options["github_url"] = f"https://github.com/{repository_name}"
|
|
176
|
+
|
|
177
|
+
html_context = {
|
|
178
|
+
"display_github": False, # Integrate GitHub
|
|
179
|
+
"github_user": ORGANIZATION_NAME,
|
|
180
|
+
"github_repo": repository_name,
|
|
181
|
+
"github_version": BRANCH,
|
|
182
|
+
"doc_path": DOC_PATH,
|
|
183
|
+
"default_mode": "dark",
|
|
184
|
+
}
|
|
185
|
+
html_show_sourcelink = False
|
|
186
|
+
html_compact_lists = False
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
# ---------- // Options for HTMLHelp output // ------------------------------------------------------------------------
|
|
190
|
+
|
|
191
|
+
# Output file base name for HTML help builder.
|
|
192
|
+
htmlhelp_basename = "ansys-solutions-a-documentation"
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
# ---------- // Options for LaTeX output // ---------------------------------------------------------------------------
|
|
196
|
+
|
|
197
|
+
latex_elements = {}
|
|
198
|
+
|
|
199
|
+
# Grouping the document tree into LaTeX files. List of tuples
|
|
200
|
+
# (source start file, target name, title,
|
|
201
|
+
# author, documentclass [howto, manual, or own class]).
|
|
202
|
+
latex_documents = [
|
|
203
|
+
(
|
|
204
|
+
master_doc,
|
|
205
|
+
f"Ansys-Solutions-a-Documentation-{package_version}.tex",
|
|
206
|
+
"Ansys Solutions A Documentation",
|
|
207
|
+
author,
|
|
208
|
+
"manual",
|
|
209
|
+
),
|
|
210
|
+
]
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
# ---------- // [Options for manual page output // --------------------------------------------------------------------
|
|
214
|
+
|
|
215
|
+
# One entry per manual page. List of tuples
|
|
216
|
+
# (source start file, name, description, authors, manual section).
|
|
217
|
+
man_pages = [
|
|
218
|
+
(
|
|
219
|
+
master_doc,
|
|
220
|
+
"Ansys Solutions A",
|
|
221
|
+
"Ansys Solutions A Documentation",
|
|
222
|
+
[author],
|
|
223
|
+
1,
|
|
224
|
+
)
|
|
225
|
+
]
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
# ---------- // Options for Texinfo output // -------------------------------------------------------------------------
|
|
229
|
+
|
|
230
|
+
# Grouping the document tree into Texinfo files. List of tuples
|
|
231
|
+
# (source start file, target name, title, author,
|
|
232
|
+
# dir menu entry, description, category)
|
|
233
|
+
texinfo_documents = [
|
|
234
|
+
(
|
|
235
|
+
master_doc,
|
|
236
|
+
"Ansys Solutions A",
|
|
237
|
+
"Ansys Solutions A Documentation",
|
|
238
|
+
author,
|
|
239
|
+
"Ansys Solutions A",
|
|
240
|
+
"Engineering Software",
|
|
241
|
+
),
|
|
242
|
+
]
|
|
243
|
+
|
|
244
|
+
# Keep these while the repository is private
|
|
245
|
+
linkcheck_ignore = [
|
|
246
|
+
"/*",
|
|
247
|
+
"https://pypi.org/project/ansys-solutions-a",
|
|
248
|
+
]
|
|
249
|
+
|
|
250
|
+
# If we are on a release, we have to ignore the "release" URLs, since it is not
|
|
251
|
+
# available until the release is published.
|
|
252
|
+
if switcher_version != "dev":
|
|
253
|
+
linkcheck_ignore.append(f"https://github.com/ansys/ansys.solutions.a/releases/tag/v{package_version}")
|