Troubleshoot execution environment builder
Identify and resolve common issues when configuring or using execution environment builder in Ansible automation portal.
Common issues
For authentication, catalog sync, and general portal issues, see Troubleshoot Ansible automation portal authentication.
The following table lists symptoms specific to execution environment builder, their causes, and the steps to resolve them.
| Symptom | Cause | Resolution |
|---|---|---|
| Execution Environments sidebar item not visible | Missingansible.execution-environments.view permission. |
An AAP administrator must grant the permission through RBAC. SeeGrant execution environment builder access. Check logs forpolicy check failed entries. |
| Collections sidebar item not visible | Missingansible.collections.view permission. |
An AAP administrator must grant the permission through RBAC. SeeGrant execution environment builder access. |
| Git Repositories sidebar item not visible | Missingansible.git-repositories.view permission. |
An AAP administrator must grant the permission through RBAC. SeeGrant execution environment builder access. |
| Saving definition files fails with "OAuth authorization failed" or HTTP 401 | GitHub or GitLab OAuth token expired or OAuth App credentials missing fromsecrets-scm. |
Re-authenticate through the Git provider selector in the wizard. Verify your AAP administrator has configured OAuth credentials and uncommented the auth provider block. SeeConfigure a GitHub App for content discovery orConfigure a GitLab OAuth App for saving definitions. Check logs forAuthentication failed for provider entries. |
| CI build fails with "secret not found" or "authentication required" in GitHub Actions or GitLab CI | Missing or misconfigured GitHub repository secrets or GitLab CI/CD variables. | An AAP administrator must configureREGISTRY_PASSWORD,REDHAT_REGISTRY_PASSWORD, orANSIBLE_GALAXY_SERVER_<NAME>_TOKEN on the GitHub repository or organization, or as CI/CD variables on the GitLab project or group. For GitHub, seeConfigure a GitHub OAuth App for saving definitions, "Automated image builds". For GitLab, seeConfigure a GitLab OAuth App for saving definitions. Open the failing workflow run or pipeline job to identify which variable is missing. |
| Collections not appearing in wizard picker or collection catalog | Content sources not configured, not synced, or sync failed. | Verify with your AAP administrator that sources are configured and synced. Check logs foransible content sync errors. If using private automation hub, verify the base URL is reachable from the portal pod. |
| Templates not visible on theExecution Environments Create tab | Default templates unreachable, custom templates not registered, or user missing RBAC permissions. |
Check logs for |
Build fails with "collection not installable" oransible-galaxy error |
Collectiongalaxy.yml is not at the repository root. |
ansible-galaxy can only install collections wheregalaxy.yml is at the repository root. Collections discovered at deeper crawl levels appear in the catalog but cannot be installed. See thecrawlDepth note inConfigure collection discovery sources. |
| Sync returns incomplete results or logs show HTTP 429 errors | Repository provider API rate limit exhausted during content discovery. | Increaseschedule.frequency or reduce the number of scanned organizations. SeeConfigure collection discovery sources. |
| GitLab CI pipeline cannot access CI/CD variables | GitLab enables theProtected setting on CI/CD variables by default. Pipelines running on non-protected branches cannot access protected variables. | In your GitLab project or group, go toSettings > CI/CD > Variables. Edit each variable and clear theProtected checkbox. This applies toREGISTRY_USERNAME,REGISTRY_PASSWORD,REDHAT_REGISTRY_USERNAME,REDHAT_REGISTRY_PASSWORD, and anyANSIBLE_GALAXY_SERVER_<NAME>_TOKEN orAAP_EE_BUILDER_ token variables. Values shorter than 8 characters cannot use the GitLabMasked setting. |
| Build dialog shows "No Git token is available" or page shows "SCM integration unavailable" | The GitLab OAuth token is missing, expired, or revoked. | Close the Build dialog and clickBuild again to re-authenticate with your GitLab host. If the "SCM integration unavailable" banner persists, an AAP administrator must verify the OAuth credentials underintegrations.gitlab inapp-config and restart the backend. SeeConfigure a GitLab OAuth App for saving definitions. |
| Build fails with "GitLab pipeline trigger failed" | The GitLab host is not configured in the portal, the GitLab OAuth application is missing required scopes, or the user does not have access to the GitLab project. | Verify with your AAP administrator that the GitLab host is listed underintegrations.gitlab inapp-config. Verify the GitLab OAuth application includes theapi,read_api,read_user,read_repository, andwrite_repository scopes. SeeConfigure a GitLab OAuth App for saving definitions. Verify the user has at least Maintainer access on the target GitLab project. |
| Each new build overwrites the previous image tag in private automation hub | A bug in versions before 2.2.4 caused the build tag variable to not be passed correctly to the CI pipeline. The Activity tab shows "tag was moved to sha256" entries instead of separate images. | Upgrade to Ansible Automation Platform 2.2.4 or later. This issue is resolved in the 2.2.4 release. |