aap-demo 2.0.0.dev0__tar.gz → 2.0.0.dev1__tar.gz
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.
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/PKG-INFO +12 -10
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/README.md +11 -9
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/plugin_packs/apme-prototype-plugins-8593383-20260718025043.oci.tar.gz +1 -1
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/FULL-README.md +11 -9
- aap_demo-2.0.0.dev1/src/aap_demo/__init__.py +6 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cli/ops.py +5 -2
- aap_demo-2.0.0.dev1/src/aap_demo/core/self_update.py +145 -0
- aap_demo-2.0.0.dev1/tests/unit/test_self_update.py +150 -0
- aap_demo-2.0.0.dev0/src/aap_demo/__init__.py +0 -6
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.ansible-lint +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.claude/CLAUDE.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.claude/skills/aap-demo/SKILL.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.claude/skills/aap-demo/evals/evals.json +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.commitlintrc.json +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.editorconfig +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/ISSUE_TEMPLATE/bug_report.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/ISSUE_TEMPLATE/documentation.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/ISSUE_TEMPLATE/github-plugin-apme.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/requirements/pypi-build.txt +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/workflows/commitlint.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/workflows/lint.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/workflows/pr-checks.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/workflows/pypi-publish.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/workflows/python-tests.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/workflows/status-badges.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/workflows/test.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.github/workflows/version-check.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.gitignore +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.markdown-link-check.json +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.markdownlint.json +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.pre-commit-config.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.secrets.baseline +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.shellcheckrc +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/.yamllint +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/LICENSE +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/Makefile +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/SECURITY.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/SKILL.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/VERSION +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/aap-demo.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/demos/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/lib/admin-password.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/lib/install-plan-approval.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/lib/replica-profile.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/manifests/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/manifests/automationorchestrator-cr.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/manifests/operator-rbac.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/manifests/operator-subscription.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/manifests/postgres-cluster.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/playbooks/sync-ao-demos.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/playbooks/tasks/sync_workflow.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/scripts/generate-manifests.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/scripts/import-demos.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/scripts/provision-aap-demos.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/.gitignore +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/TEST_PLAN.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/defaults.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/apme-vars.example.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/deploy_apme_portal.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/aap_apme_prerequisites/defaults/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/aap_apme_prerequisites/meta/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/aap_apme_prerequisites/tasks/create_api_token.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/aap_apme_prerequisites/tasks/create_oauth_app.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/aap_apme_prerequisites/tasks/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_gateway_helm/defaults/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_gateway_helm/files/apme-values.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_gateway_helm/meta/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_gateway_helm/tasks/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_helm_bootstrap/defaults/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_helm_bootstrap/tasks/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_helm_values/defaults/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_helm_values/files/portal-apme-values.yaml.template +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_helm_values/meta/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_helm_values/tasks/aap_auth_only.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_helm_values/tasks/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_helm_values/tasks/pah_integration.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_helm_values/tasks/portal_app_config_substitution.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_oci_push/defaults/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_oci_push/meta/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_oci_push/tasks/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_pah_integration/defaults/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_pah_integration/meta/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_pah_integration/tasks/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_pah_integration/tasks/seed_apme_galaxy_servers.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_scm_secrets/defaults/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_scm_secrets/meta/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/apme_scm_secrets/tasks/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/openshift_apme_setup/defaults/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/openshift_apme_setup/files/apme-register-git-repository/content/catalog-info.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/openshift_apme_setup/files/apme-register-git-repository/template.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/openshift_apme_setup/meta/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/openshift_apme_setup/tasks/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/openshift_apme_setup/templates/registries-openshift-integrated.conf.j2 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/portal_helm_install/defaults/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/portal_helm_install/meta/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/roles/portal_helm_install/tasks/main.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/setup.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/tasks/resolve_plugin_pack.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/templates/deployment-info.md.j2 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/templates/kubeconfig.j2 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/plugin_packs/.gitignore +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/plugin_packs/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/plugin_packs/plugin-pack.manifest.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/requirements.txt +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/requirements.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/scripts/push_oci_archive.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/devspaces/checluster.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/devspaces/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/fleet/cloud-init/meta-data.template +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/fleet/cloud-init/user-data.template +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/fleet/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/fleet/fleet-aap.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/fleet/fleet.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/local-cache/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/local-cache/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/mcp-server/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/mcp-server/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/mcp-server/mcp-server.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ollama/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ollama/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ollama/ollama.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/olm/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/opa/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/opa/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/opa/playbooks/clear-policies.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/opa/playbooks/demo-policy.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/opa/playbooks/load-policies.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/opa/playbooks/test-policies.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/portal/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/portal/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/portal/values.yaml.template +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/portal-operator/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/portal-operator/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-cloud/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-cloud/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-linux/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-linux/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-network/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-network/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-openshift/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-openshift/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-satellite/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-satellite/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-windows/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demo-windows/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demos/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demos/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demos-base/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demos-base/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demos-base/lib.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demos-base/patches/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demos-base/patches/install-apd.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/product-demos-base/playbooks/install-apd-aap-demo.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/registry/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/registry/registry.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/setup-pah/deploy.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/crs/aap-controller-eda.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/crs/aap-controller.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/crs/aap-minimal-noingress.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/crs/aap-minimal-rwx.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/crs/aap-minimal.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/manifests/aap-ingress.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/manifests/aap-storage-pvcs.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/manifests/coredns-config.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/manifests/kustomization.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/manifests/local-path-provisioner.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/manifests/local-path-scc.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/manifests/nfs-provisioner.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/manifests/nfs-server.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/olm/catalogsource.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/olm/operatorgroup.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/olm/subscription.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/config/patches/controller-git-safe-directory.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/CONTRIBUTING.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/LINTING-QUICK-REF.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/LINTING-SETUP.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/LINTING.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/aap-mcp-server.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/000-template.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/001-project-cli-architecture.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/002-portal-helm-deployment.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/003-infrastructure-backend-selection.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/004-portal-helm-addon.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/005-olm-on-microshift.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/006-storage-architecture.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/007-coredns-route-resolution.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/008-addon-system.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/009-aap-operator-olm-deployment.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/010-cross-platform-cli.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/011-mcp-server-addon.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/012-scc-and-pod-security.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/013-in-cluster-registry.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/014-testing-strategy.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/015-ingress-ca-user-store-trust.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/016-console-pah-authentication.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/017-ao-addon.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/018-product-demos-addon.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/019-apme-playbook-addon.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/019b-apme-aap-native-execution.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/020-full-openshift-support.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/021-local-cache-addon.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/022-apme-prebuilt-portal-hub.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/023-addon-auto-wiring.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/024-ollama-addon.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/025-portal-operator-cpu-preflight.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/026-fleet-addon.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/027-low-resource-ao-replicas.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/028-ao-agentic-model-binding.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/029-windows-feature-parity.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/030-windows-native-addon-execution.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/031-windows-git-bash-wrapper.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/adr/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/collection-authentication.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/environment-comparison.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/plans/windows-feature-parity.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/plans/windows-git-bash-wrapper.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/docs/plans/windows-native-addon-port.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/images/Containerfile.vm +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/images/config/microshift-config.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/images/config/policy.json +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/aap-demo-notice.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/aap-demo-paths.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/aap-demo-version.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/aap-readiness.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/addon-wire.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/ao-llm.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/crc-create.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/galaxy-auth.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/infra-api.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/infra-crc.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/ingress-ca-trust.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/json-utils.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/olm-catalog-signature.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/persistent-crio-store.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/includes/temp-swap.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/install.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/lint.mk +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/aap-demo.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/install.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/AapDemo.psm1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Addons.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Collections.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Commands.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Create.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Deploy.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Diagnose.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Helpers.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/NativeAddons.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/NativeAo.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/NativeAoWire.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/NativeProcess.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Portal.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Prerequisites.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Status.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/powershell/native/Private/Watch.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/pyproject.toml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/requirements.yml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/aap-demo-completion.bash +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/aap-demo-completion.zsh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/check-version-bump.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/enable-temp-swap.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/local-prereq.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/multi-host-test.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/preflight-checks.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/require-tool.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/setup-linting.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/test-temp-swap-flow.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/scripts/watch-aap.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/__main__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cli/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cli/_schema_args.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cli/addons.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cli/completion.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cli/day2.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cli/gui.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cli/lifecycle.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cli/main.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cli/observe.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/aap.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/bootstrap.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/catalog_signature.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/coredns.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/deploy.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/ingress_ca.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/kubeconfig.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/namespace.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/olm.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/preflight.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/pull_secret.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/runtime.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/scc.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/status.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/cluster/storage.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/bash_v1.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/config.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/console.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/context.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/errors.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/events.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/migration.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/output.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/paths.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/prompts.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/schema.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/secrets.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/version.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/core/waiting.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/crc-release +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/crs/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/crs/aap-controller-eda.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/crs/aap-controller.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/crs/aap-minimal-noingress.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/crs/aap-minimal-rwx.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/crs/aap-minimal.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/manifests/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/manifests/aap-storage-pvcs.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/manifests/nfs-provisioner.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/manifests/nfs-server.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/olm/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/olm/catalogsource.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/olm/operatorgroup.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/olm/subscription.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/schema/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/schema/addons.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/schema/core.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/schema/crc.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/schema/deploy.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/schema/gui.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/schema/playbooks.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/schema/secrets.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/data/schema/trust.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/diagnostics/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/diagnostics/checks.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/diagnostics/report.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/exec/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/exec/kubectl.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/exec/oc.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/exec/operator_sdk.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/exec/runner.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/exec/ssh.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/infra/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/infra/crc.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/src/aap_demo/infra/crc_install.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/README.md +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-aap-readiness.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-admin-password.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-catalog-source.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-enable-provider.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-import-demos.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-install-plan-approval.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-llm-provider.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-llm-wiring.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-llm-workflow-binding.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-mcp-integration.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-olm-approval.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-operator-subscription.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-replica-profile.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ao-scc.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-cli-parsing.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-core-commands.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-crc-create-linux-does-not-require-windows-daemon.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-crc-create-stability.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-crc-create-windows-daemon-setup.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-crc-kubectl-fallback.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-crc-resource-prompt-condition.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-crc-resource-prompt.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-crc-version-check.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-deploy-cache-order.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-deploy-cache-skip.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-destroy-invalid-state.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-infra-crc-status.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ingress-ca-export.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-install.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-json-utils.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-kubectl-child-fallback.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-local-cache.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-mcp-rollout-timeout.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-nfs-capacity-diagnostics.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-nfs-storage-size.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-ollama.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-olm-windows-gitbash.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-persistent-crio-store.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-portal-helm.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-portal-operator.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-powershell-crc-status.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-powershell-deploy-prerequisites.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-powershell-git-bash-addon.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-powershell-git-bash-interactive.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-powershell-installer-launcher.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-powershell-native-addons.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-powershell-parity.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-powershell-portal-host-alias.ps1 +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-product-demos-api.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-product-demos-overlay.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-product-demos-project-sync.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-provision-aap-demos.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-windows-deferred-addons.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-windows-ingress-ca.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-windows-jq-prerequisite.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/test/test-windows-python-prerequisite.sh +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/conftest.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/crc/status_running.json +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/crc/status_stopped.json +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/golden/aap-storage-pvcs.aap-operator.aap.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/golden/catalogsource.aap-operator.4.22.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/golden/cr.controller-eda.aap-operator.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/golden/cr.controller.aap-operator.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/golden/cr.minimal-noingress.public.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/golden/cr.minimal-rwx.aap-operator.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/golden/cr.minimal.aap-operator.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/golden/operatorgroup.aap-operator.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/golden/subscription.aap-operator.stable-2.6.BUGGY.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/golden/subscription.aap-operator.stable-2.7.yaml +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/addons_only/.aap-demo/config +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/empty_config/.aap-demo/config +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/full/.aap-demo/atf-vault-password +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/full/.aap-demo/config +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/full/.aap-demo/crc-ingress-ca.crt +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/full/.aap-demo/galaxy-token +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/full/.aap-demo/kubeconfig.microshift +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/full/.aap-demo/local-cache/microshift/image.tar +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/full/.aap-demo/pah-token +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/full/.aap-demo/pull-secret.txt +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/no_config/.aap-demo/pull-secret.txt +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/partial/.aap-demo/config +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/partial/.aap-demo/galaxy-token +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/partial/.aap-demo/kubeconfig.microshift +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/fixtures/legacy_home/retired_addons/.aap-demo/config +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/integration/__init__.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/integration/conftest.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/integration/test_deploy_live.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_bash_v1.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_bootstrap.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_catalog_signature.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_cli_observe.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_cli_surface.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_cluster_aap.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_cluster_deploy.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_cluster_kubeconfig.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_cluster_namespace_scc.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_cluster_olm.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_cluster_preflight.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_cluster_status.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_config_store.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_console_report.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_console_tasks.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_crc_install.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_diagnostics_checks.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_events.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_exec_ssh.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_infra_crc.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_ingress_ca.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_migration.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_ops_redhat_status.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_ops_ssh_kubeconfig.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_paths.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_pull_secret.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_render_golden.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_runner.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_runtime.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_schema_parity.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_secrets.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_waiting.py +0 -0
- {aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/tests/unit/test_yaml_loader.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: aap-demo
|
|
3
|
-
Version: 2.0.0.
|
|
3
|
+
Version: 2.0.0.dev1
|
|
4
4
|
Summary: Deploy Ansible Automation Platform 2.7 to OpenShift Local (MicroShift or OpenShift preset)
|
|
5
5
|
Project-URL: Homepage, https://github.com/RedHatOfficial/aap-demo
|
|
6
6
|
Project-URL: Source, https://github.com/RedHatOfficial/aap-demo
|
|
@@ -52,26 +52,28 @@ Deploy AAP to a local MicroShift cluster in minutes.
|
|
|
52
52
|
|
|
53
53
|
## Install
|
|
54
54
|
|
|
55
|
-
Python 3.9 or newer.
|
|
55
|
+
Python 3.9 or newer. [pipx](https://pipx.pypa.io/) keeps the command isolated from the rest of your Python packages:
|
|
56
56
|
|
|
57
57
|
```bash
|
|
58
|
-
pipx install
|
|
58
|
+
pipx install aap-demo
|
|
59
59
|
```
|
|
60
60
|
|
|
61
|
-
|
|
61
|
+
Update the installed command with:
|
|
62
62
|
|
|
63
63
|
```bash
|
|
64
|
-
|
|
64
|
+
aap-demo update
|
|
65
65
|
```
|
|
66
66
|
|
|
67
|
-
|
|
67
|
+
That checks how this command was installed, then runs `pipx upgrade aap-demo`.
|
|
68
|
+
|
|
69
|
+
pip and uv install the same release:
|
|
68
70
|
|
|
69
71
|
```bash
|
|
70
|
-
pip install
|
|
71
|
-
uv tool install
|
|
72
|
+
pip install aap-demo
|
|
73
|
+
uv tool install aap-demo
|
|
72
74
|
```
|
|
73
75
|
|
|
74
|
-
|
|
76
|
+
This installs the published release of the v2 beta. Check out `v2` only if you are changing the code. If you already installed from the git URL, switch with `pipx install --force aap-demo`.
|
|
75
77
|
|
|
76
78
|
### Replace the bash v1 command
|
|
77
79
|
|
|
@@ -224,7 +226,7 @@ aap-demo repair # Fix after sleep/wake issues
|
|
|
224
226
|
|
|
225
227
|
# Maintenance
|
|
226
228
|
aap-demo clean # Remove AAP deployment (keeps cluster)
|
|
227
|
-
aap-demo update #
|
|
229
|
+
aap-demo update # Update the pipx install to the latest release
|
|
228
230
|
aap-demo help # Full command reference
|
|
229
231
|
```
|
|
230
232
|
|
|
@@ -10,26 +10,28 @@ Deploy AAP to a local MicroShift cluster in minutes.
|
|
|
10
10
|
|
|
11
11
|
## Install
|
|
12
12
|
|
|
13
|
-
Python 3.9 or newer.
|
|
13
|
+
Python 3.9 or newer. [pipx](https://pipx.pypa.io/) keeps the command isolated from the rest of your Python packages:
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
pipx install
|
|
16
|
+
pipx install aap-demo
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
Update the installed command with:
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
|
-
|
|
22
|
+
aap-demo update
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
That checks how this command was installed, then runs `pipx upgrade aap-demo`.
|
|
26
|
+
|
|
27
|
+
pip and uv install the same release:
|
|
26
28
|
|
|
27
29
|
```bash
|
|
28
|
-
pip install
|
|
29
|
-
uv tool install
|
|
30
|
+
pip install aap-demo
|
|
31
|
+
uv tool install aap-demo
|
|
30
32
|
```
|
|
31
33
|
|
|
32
|
-
|
|
34
|
+
This installs the published release of the v2 beta. Check out `v2` only if you are changing the code. If you already installed from the git URL, switch with `pipx install --force aap-demo`.
|
|
33
35
|
|
|
34
36
|
### Replace the bash v1 command
|
|
35
37
|
|
|
@@ -182,7 +184,7 @@ aap-demo repair # Fix after sleep/wake issues
|
|
|
182
184
|
|
|
183
185
|
# Maintenance
|
|
184
186
|
aap-demo clean # Remove AAP deployment (keeps cluster)
|
|
185
|
-
aap-demo update #
|
|
187
|
+
aap-demo update # Update the pipx install to the latest release
|
|
186
188
|
aap-demo help # Full command reference
|
|
187
189
|
```
|
|
188
190
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
[diffend] Oversized file quarantined before diffing.
|
|
2
|
-
name: aap_demo-2.0.0.
|
|
2
|
+
name: aap_demo-2.0.0.dev1/addons/apme-eap/plugin_packs/apme-prototype-plugins-8593383-20260718025043.oci.tar.gz
|
|
3
3
|
size: 37785090 bytes
|
|
4
4
|
sha256: 943f67afce1f9d1852df09b74da0126ef73f861e1ffc066e5196cc3701f341c3
|
|
@@ -88,26 +88,28 @@ See [scripts/README.md](../scripts/README.md) for Linux-only details.
|
|
|
88
88
|
|
|
89
89
|
### Install
|
|
90
90
|
|
|
91
|
-
Python 3.9 or newer.
|
|
91
|
+
Python 3.9 or newer. [pipx](https://pipx.pypa.io/) keeps the command isolated from the rest of your Python packages:
|
|
92
92
|
|
|
93
93
|
```bash
|
|
94
|
-
pipx install
|
|
94
|
+
pipx install aap-demo
|
|
95
95
|
```
|
|
96
96
|
|
|
97
|
-
|
|
97
|
+
Update the installed command with:
|
|
98
98
|
|
|
99
99
|
```bash
|
|
100
|
-
|
|
100
|
+
aap-demo update
|
|
101
101
|
```
|
|
102
102
|
|
|
103
|
-
|
|
103
|
+
That checks how this command was installed, then runs `pipx upgrade aap-demo`.
|
|
104
|
+
|
|
105
|
+
pip and uv install the same release:
|
|
104
106
|
|
|
105
107
|
```bash
|
|
106
|
-
pip install
|
|
107
|
-
uv tool install
|
|
108
|
+
pip install aap-demo
|
|
109
|
+
uv tool install aap-demo
|
|
108
110
|
```
|
|
109
111
|
|
|
110
|
-
|
|
112
|
+
This installs the published release of the v2 beta. Check out `v2` only if you are changing the code. If you already installed from the git URL, switch with `pipx install --force aap-demo`.
|
|
111
113
|
|
|
112
114
|
`./install.sh` links `~/.local/bin/aap-demo` to the bash script. pipx installs v2 at that same path, so move or remove the old command before installing v2.
|
|
113
115
|
|
|
@@ -255,7 +257,7 @@ aap-demo must-gather /tmp/d # Collect to specific directory
|
|
|
255
257
|
|
|
256
258
|
# Maintenance
|
|
257
259
|
aap-demo clean # Remove AAP deployment (keeps cluster)
|
|
258
|
-
aap-demo update #
|
|
260
|
+
aap-demo update # Update the pipx install to the latest release
|
|
259
261
|
aap-demo help # Full command reference
|
|
260
262
|
```
|
|
261
263
|
|
|
@@ -17,7 +17,6 @@ from aap_demo.core.context import AppContext
|
|
|
17
17
|
from aap_demo.core.errors import (
|
|
18
18
|
AapDemoError,
|
|
19
19
|
ClusterUnreachableError,
|
|
20
|
-
NotImplementedYetError,
|
|
21
20
|
UsageError,
|
|
22
21
|
)
|
|
23
22
|
from aap_demo.core.output import is_structured
|
|
@@ -375,4 +374,8 @@ def idle(ctx: AppContext, args: argparse.Namespace) -> int:
|
|
|
375
374
|
|
|
376
375
|
|
|
377
376
|
def update(ctx: AppContext, args: argparse.Namespace) -> int:
|
|
378
|
-
|
|
377
|
+
"""Upgrade the pipx install of aap-demo."""
|
|
378
|
+
del args
|
|
379
|
+
from aap_demo.core import self_update
|
|
380
|
+
|
|
381
|
+
return self_update.run(ctx)
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"""Update the pipx install of aap-demo.
|
|
2
|
+
|
|
3
|
+
``aap-demo update`` is the supported upgrade. It checks how this command was
|
|
4
|
+
installed, then runs ``pipx upgrade aap-demo``. Later checks belong here, not
|
|
5
|
+
in a second command.
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from __future__ import annotations
|
|
9
|
+
|
|
10
|
+
import json
|
|
11
|
+
import shutil
|
|
12
|
+
import subprocess
|
|
13
|
+
from typing import Any, Optional, Sequence
|
|
14
|
+
|
|
15
|
+
from aap_demo.core.context import AppContext
|
|
16
|
+
from aap_demo.core.errors import AapDemoError, PrerequisiteError
|
|
17
|
+
from aap_demo.core.version import version_info
|
|
18
|
+
from aap_demo.exec.runner import CompletedCommand
|
|
19
|
+
|
|
20
|
+
PACKAGE = "aap-demo"
|
|
21
|
+
LIST_TIMEOUT = 60.0
|
|
22
|
+
UPGRADE_TIMEOUT = 600.0
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def run(ctx: AppContext) -> int:
|
|
26
|
+
"""Upgrade the pipx install and report how this command was installed."""
|
|
27
|
+
info = version_info(ctx.runner)
|
|
28
|
+
ctx.console.out(f"Current: {info.version}")
|
|
29
|
+
if info.install_mode == "checkout":
|
|
30
|
+
ctx.console.out(
|
|
31
|
+
"This command is a source checkout. "
|
|
32
|
+
"The update applies to the pipx install, not this tree."
|
|
33
|
+
)
|
|
34
|
+
|
|
35
|
+
pipx = shutil.which("pipx")
|
|
36
|
+
if not pipx:
|
|
37
|
+
raise PrerequisiteError(
|
|
38
|
+
"pipx is not on PATH",
|
|
39
|
+
hint="Install pipx, then run: pipx install aap-demo",
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
source = _installed_source(ctx, pipx)
|
|
43
|
+
if _is_direct_source(source):
|
|
44
|
+
ctx.console.warn(f"This pipx install tracks {source}")
|
|
45
|
+
ctx.console.out("The published release is: pipx install --force aap-demo")
|
|
46
|
+
|
|
47
|
+
ctx.console.out("Upgrading the pipx install...")
|
|
48
|
+
result = _run_pipx(
|
|
49
|
+
ctx,
|
|
50
|
+
[pipx, "upgrade", PACKAGE],
|
|
51
|
+
timeout=UPGRADE_TIMEOUT,
|
|
52
|
+
capture=False,
|
|
53
|
+
action="upgrade",
|
|
54
|
+
)
|
|
55
|
+
if result.returncode != 0:
|
|
56
|
+
return result.returncode
|
|
57
|
+
ctx.console.out("Update complete. Run `aap-demo version` to see the installed release.")
|
|
58
|
+
return 0
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
def _run_pipx(
|
|
62
|
+
ctx: AppContext,
|
|
63
|
+
argv: Sequence[str],
|
|
64
|
+
*,
|
|
65
|
+
timeout: float,
|
|
66
|
+
action: str,
|
|
67
|
+
capture: bool = True,
|
|
68
|
+
) -> CompletedCommand:
|
|
69
|
+
"""Run one pipx step. A stall becomes an ``aap-demo update`` error."""
|
|
70
|
+
try:
|
|
71
|
+
return ctx.runner.run(list(argv), capture=capture, timeout=timeout)
|
|
72
|
+
except subprocess.TimeoutExpired as exc:
|
|
73
|
+
raise _timeout_error(action, timeout) from exc
|
|
74
|
+
except AapDemoError as exc:
|
|
75
|
+
if "timed out" not in str(exc):
|
|
76
|
+
raise
|
|
77
|
+
raise _timeout_error(action, timeout) from exc
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
def _timeout_error(action: str, timeout: float) -> AapDemoError:
|
|
81
|
+
return AapDemoError(
|
|
82
|
+
f"pipx {action} timed out after {int(timeout)}s",
|
|
83
|
+
hint="Check the network, then run aap-demo update again.",
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
def _installed_source(ctx: AppContext, pipx: str) -> str:
|
|
88
|
+
"""``package_or_url`` for the pipx app, or raise when pipx did not install it."""
|
|
89
|
+
listing = _run_pipx(ctx, [pipx, "list", "--json"], timeout=LIST_TIMEOUT, action="list")
|
|
90
|
+
if not listing.ok:
|
|
91
|
+
detail = (listing.stderr or listing.stdout or "").strip()
|
|
92
|
+
raise AapDemoError("Could not read the pipx install list", hint=detail or None)
|
|
93
|
+
try:
|
|
94
|
+
payload = json.loads(listing.stdout or "")
|
|
95
|
+
except json.JSONDecodeError as exc:
|
|
96
|
+
raise AapDemoError("Could not read the pipx install list") from exc
|
|
97
|
+
source, gaps = _package_record(payload)
|
|
98
|
+
if source is None:
|
|
99
|
+
raise AapDemoError(
|
|
100
|
+
"aap-demo is not installed with pipx",
|
|
101
|
+
hint="Install the published release with: pipx install aap-demo",
|
|
102
|
+
)
|
|
103
|
+
if gaps:
|
|
104
|
+
missing = " and ".join(gaps)
|
|
105
|
+
ctx.console.warn(f"pipx did not report {missing} for aap-demo")
|
|
106
|
+
ctx.console.out(
|
|
107
|
+
"The install is being treated as the published release. "
|
|
108
|
+
"If it tracks a git URL or a path, switch with: pipx install --force aap-demo"
|
|
109
|
+
)
|
|
110
|
+
return source
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
def _package_record(payload: Any) -> tuple[Optional[str], list[str]]:
|
|
114
|
+
"""``(package_or_url, missing field names)`` for the aap-demo pipx app."""
|
|
115
|
+
venvs = payload.get("venvs") if isinstance(payload, dict) else None
|
|
116
|
+
if not isinstance(venvs, dict):
|
|
117
|
+
return None, []
|
|
118
|
+
for name, env in venvs.items():
|
|
119
|
+
if not isinstance(env, dict):
|
|
120
|
+
continue
|
|
121
|
+
raw_metadata = env.get("metadata")
|
|
122
|
+
metadata = raw_metadata if isinstance(raw_metadata, dict) else {}
|
|
123
|
+
raw_main = metadata.get("main_package")
|
|
124
|
+
main = raw_main if isinstance(raw_main, dict) else {}
|
|
125
|
+
package_name = main.get("package")
|
|
126
|
+
gaps: list[str] = []
|
|
127
|
+
if not package_name:
|
|
128
|
+
gaps.append("package")
|
|
129
|
+
package_name = name
|
|
130
|
+
if str(package_name) != PACKAGE and name != PACKAGE:
|
|
131
|
+
continue
|
|
132
|
+
spec = main.get("package_or_url")
|
|
133
|
+
if not spec:
|
|
134
|
+
gaps.append("package_or_url")
|
|
135
|
+
spec = PACKAGE
|
|
136
|
+
return str(spec), gaps
|
|
137
|
+
return None, []
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
def _is_direct_source(spec: str) -> bool:
|
|
141
|
+
"""True when pipx installed from a URL or a path instead of the PyPI release."""
|
|
142
|
+
text = spec.strip()
|
|
143
|
+
if text in {"", PACKAGE}:
|
|
144
|
+
return False
|
|
145
|
+
return "://" in text or "/" in text or text.startswith((".", "~"))
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"""``aap-demo update`` upgrades the pipx install after checking how it was installed."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
import json
|
|
6
|
+
import subprocess
|
|
7
|
+
|
|
8
|
+
import pytest
|
|
9
|
+
|
|
10
|
+
from aap_demo.core import self_update
|
|
11
|
+
from aap_demo.core.errors import AapDemoError, PrerequisiteError
|
|
12
|
+
from aap_demo.core.version import VersionInfo
|
|
13
|
+
from aap_demo.exec.runner import FakeRunner
|
|
14
|
+
|
|
15
|
+
PIPX = "/usr/bin/pipx"
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def _info(mode: str = "package") -> VersionInfo:
|
|
19
|
+
return VersionInfo(version="2.0.0.dev0", source="/tmp/aap-demo", install_mode=mode)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def _listing(spec: str = "aap-demo") -> str:
|
|
23
|
+
return json.dumps(
|
|
24
|
+
{
|
|
25
|
+
"venvs": {
|
|
26
|
+
"aap-demo": {
|
|
27
|
+
"metadata": {"main_package": {"package": "aap-demo", "package_or_url": spec}}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
def _runner(spec: str = "aap-demo", *, upgrade: bool = True) -> FakeRunner:
|
|
35
|
+
runner = FakeRunner()
|
|
36
|
+
runner.ok([PIPX, "list", "--json"], stdout=_listing(spec))
|
|
37
|
+
if upgrade:
|
|
38
|
+
runner.ok([PIPX, "upgrade", "aap-demo"])
|
|
39
|
+
return runner
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def test_update_upgrades_a_pypi_pipx_install(app_ctx, monkeypatch) -> None:
|
|
43
|
+
monkeypatch.setattr(self_update.shutil, "which", lambda _name: PIPX)
|
|
44
|
+
monkeypatch.setattr(self_update, "version_info", lambda _runner: _info())
|
|
45
|
+
app_ctx.runner = _runner()
|
|
46
|
+
|
|
47
|
+
assert self_update.run(app_ctx) == 0
|
|
48
|
+
|
|
49
|
+
assert app_ctx.runner.called([PIPX, "upgrade", "aap-demo"])
|
|
50
|
+
assert [call.timeout for call in app_ctx.runner.calls] == [
|
|
51
|
+
self_update.LIST_TIMEOUT,
|
|
52
|
+
self_update.UPGRADE_TIMEOUT,
|
|
53
|
+
]
|
|
54
|
+
assert "Current: 2.0.0.dev0" in app_ctx.console.stdout
|
|
55
|
+
assert "Update complete" in app_ctx.console.stdout
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
def test_update_warns_when_pipx_tracks_a_git_url(app_ctx, monkeypatch) -> None:
|
|
59
|
+
monkeypatch.setattr(self_update.shutil, "which", lambda _name: PIPX)
|
|
60
|
+
monkeypatch.setattr(self_update, "version_info", lambda _runner: _info())
|
|
61
|
+
app_ctx.runner = _runner("git+https://github.com/RedHatOfficial/aap-demo.git@v2")
|
|
62
|
+
|
|
63
|
+
assert self_update.run(app_ctx) == 0
|
|
64
|
+
|
|
65
|
+
assert "tracks git+https://" in app_ctx.console.stderr
|
|
66
|
+
assert "pipx install --force aap-demo" in app_ctx.console.stdout
|
|
67
|
+
assert app_ctx.runner.called([PIPX, "upgrade", "aap-demo"])
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
def test_update_warns_for_a_relative_path_install(app_ctx, monkeypatch) -> None:
|
|
71
|
+
monkeypatch.setattr(self_update.shutil, "which", lambda _name: PIPX)
|
|
72
|
+
monkeypatch.setattr(self_update, "version_info", lambda _runner: _info())
|
|
73
|
+
app_ctx.runner = _runner("path/to/aap-demo")
|
|
74
|
+
|
|
75
|
+
assert self_update.run(app_ctx) == 0
|
|
76
|
+
|
|
77
|
+
assert "tracks path/to/aap-demo" in app_ctx.console.stderr
|
|
78
|
+
assert "pipx install --force aap-demo" in app_ctx.console.stdout
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
def test_update_warns_when_pipx_omits_package_or_url(app_ctx, monkeypatch) -> None:
|
|
82
|
+
monkeypatch.setattr(self_update.shutil, "which", lambda _name: PIPX)
|
|
83
|
+
monkeypatch.setattr(self_update, "version_info", lambda _runner: _info())
|
|
84
|
+
payload = {"venvs": {"aap-demo": {"metadata": {"main_package": {"package": "aap-demo"}}}}}
|
|
85
|
+
runner = FakeRunner()
|
|
86
|
+
runner.ok([PIPX, "list", "--json"], stdout=json.dumps(payload))
|
|
87
|
+
runner.ok([PIPX, "upgrade", "aap-demo"])
|
|
88
|
+
app_ctx.runner = runner
|
|
89
|
+
|
|
90
|
+
assert self_update.run(app_ctx) == 0
|
|
91
|
+
|
|
92
|
+
assert "did not report package_or_url" in app_ctx.console.stderr
|
|
93
|
+
assert "treated as the published release" in app_ctx.console.stdout
|
|
94
|
+
assert runner.called([PIPX, "upgrade", "aap-demo"])
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
def test_update_says_when_this_command_is_a_checkout(app_ctx, monkeypatch) -> None:
|
|
98
|
+
monkeypatch.setattr(self_update.shutil, "which", lambda _name: PIPX)
|
|
99
|
+
monkeypatch.setattr(self_update, "version_info", lambda _runner: _info("checkout"))
|
|
100
|
+
app_ctx.runner = _runner()
|
|
101
|
+
|
|
102
|
+
assert self_update.run(app_ctx) == 0
|
|
103
|
+
|
|
104
|
+
assert "source checkout" in app_ctx.console.stdout
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
def test_update_requires_pipx(app_ctx, monkeypatch) -> None:
|
|
108
|
+
monkeypatch.setattr(self_update.shutil, "which", lambda _name: None)
|
|
109
|
+
monkeypatch.setattr(self_update, "version_info", lambda _runner: _info())
|
|
110
|
+
|
|
111
|
+
with pytest.raises(PrerequisiteError, match="pipx is not on PATH"):
|
|
112
|
+
self_update.run(app_ctx)
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
def test_update_requires_a_pipx_install(app_ctx, monkeypatch) -> None:
|
|
116
|
+
monkeypatch.setattr(self_update.shutil, "which", lambda _name: PIPX)
|
|
117
|
+
monkeypatch.setattr(self_update, "version_info", lambda _runner: _info())
|
|
118
|
+
app_ctx.runner = FakeRunner().ok([PIPX, "list", "--json"], stdout='{"venvs": {}}')
|
|
119
|
+
|
|
120
|
+
with pytest.raises(AapDemoError, match="not installed with pipx"):
|
|
121
|
+
self_update.run(app_ctx)
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
def test_update_reports_a_pipx_list_timeout(app_ctx, monkeypatch) -> None:
|
|
125
|
+
monkeypatch.setattr(self_update.shutil, "which", lambda _name: PIPX)
|
|
126
|
+
monkeypatch.setattr(self_update, "version_info", lambda _runner: _info())
|
|
127
|
+
runner = FakeRunner()
|
|
128
|
+
runner.register(
|
|
129
|
+
[PIPX, "list", "--json"],
|
|
130
|
+
AapDemoError("command timed out after 60s: /usr/bin/pipx list --json"),
|
|
131
|
+
)
|
|
132
|
+
app_ctx.runner = runner
|
|
133
|
+
|
|
134
|
+
with pytest.raises(AapDemoError, match="pipx list timed out after 60s"):
|
|
135
|
+
self_update.run(app_ctx)
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
def test_update_reports_a_pipx_upgrade_timeout(app_ctx, monkeypatch) -> None:
|
|
139
|
+
monkeypatch.setattr(self_update.shutil, "which", lambda _name: PIPX)
|
|
140
|
+
monkeypatch.setattr(self_update, "version_info", lambda _runner: _info())
|
|
141
|
+
runner = FakeRunner()
|
|
142
|
+
runner.ok([PIPX, "list", "--json"], stdout=_listing())
|
|
143
|
+
runner.register(
|
|
144
|
+
[PIPX, "upgrade", "aap-demo"],
|
|
145
|
+
subprocess.TimeoutExpired(cmd=[PIPX, "upgrade", "aap-demo"], timeout=600),
|
|
146
|
+
)
|
|
147
|
+
app_ctx.runner = runner
|
|
148
|
+
|
|
149
|
+
with pytest.raises(AapDemoError, match="pipx upgrade timed out after 600s"):
|
|
150
|
+
self_update.run(app_ctx)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/ao/manifests/automationorchestrator-cr.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{aap_demo-2.0.0.dev0 → aap_demo-2.0.0.dev1}/addons/apme-eap/playbooks/deploy_apme_portal.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|