This page describes any known issues with Acquia CLI.
If you encounter any difficulties with Acquia CLI, create a Support ticket.
For known issues with Cloud IDE, see Known issues in Cloud IDE.
Federated Authentication requires a workaround
Important
Federated Authentication does not work with Acquia CLI versions earlier than 2.14.0.
- Upgrade Acquia CLI to the latest version by running the
acli self-update
command. Set the following environment variable before running any Acquia CLI command:
export AH_ORGANIZATION_UUID=<organization-UUID>
To ensure that this change is permanent, store the preceding command at the end of your
.bashrc
file:echo "export AH_ORGANIZATION_UUID=<organization-UUID>" >> ~/.bashrc
Note
To find your organization UUID:
- Access https://cloud.acquia.com/a/organizations.
- Select your organization.
Retrieve the organization UUID from the URL:
https://cloud.acquia.com/a/organizations/<organization-UUID>
Re-authenticate Acquia CLI:
acli auth:login
SSL certificate problem on Windows
On certain Windows installations, you might run into the below issue:
curl: (60) SSL certificate problem: unable to get local issuer certificate
This is not an issue with Acquia CLI but with your Windows installation. Here are Acquia’s recommendations to fix the issue.
- Download the
cacert.pm
file from the curl.haxx.se website. - Uncomment the
php_openssl.dll
value inphp.ini
- Uncomment the
curl.cainfo
andopenssl.cafile
values inphp.ini
and point to thecacert.pm
file.
This should look like this:
curl.cainfo="c:\path\to\cacert.pem"
openssl.cafile="c:\path\to\cacert.pem"
You should be all set. Restart PHP and try again to run the Acquia CLI command that was failing for you before.
Permission denied when trying to list environments
Acquia CLI can return the following error when using the acli api:applications:environment-list
command:
Cloud Platform API returned an error: The application you are trying to
access does not exist, or you do not have permission to access it.
If you have the same SSH key added to two different Cloud Platform accounts, and if those two accounts have access to the same subscription, then there will be an issue in accessing using the Cloud Platform API.
To resolve this ensure that each of the Cloud Platform accounts has two different SSH keys.
Incompatibility with the ext-psr PHP extension
If you have the ext-psr
extension enabled, you will run into the following issue:
PHP Fatal error: Uncaught ValueError: class_alias(): Argument #1 ($class) must be a
user-defined class name, internal class name given in phar:///usr/local/bin/acli/vendor/laminas/laminas-servicemanager/src/autoload.php:14
This issue occurs because of a hard conflict between an Acquia CLI dependency and the PSR extension.
To resolve this issue, disable the PSR extension.
Artifact does not include front-end build assets
When you run acli push:artifact
, the artifact does not include front-end build assets because the .gitignore
file ignores them. It does not happen because of Acquia CLI as Acquia CLI neither deletes the files nor regenerates them.
Workaround:
To override the
.gitignore
file and commit the files:- In the
composer.json
file, locate theextra
key. - In the
installer-paths
key, add an entry with the path to the files that are not present in the artifact.
Ensure that the
.gitignore
file is correctly configured and does not contain any files that must be tracked.- In the
- To build the front-end asset during deployment:
Add post-install-cmd to your project’s
composer.json
file:"post-install-cmd": [ "cd docroot/themes/custom/<my_theme> && rm -rf node_modules && npm install && npm run build" ]
The
post-install-cmd
must contain the commands that must be executed to build your front-end dependencies:Add the path to your custom theme in the
installer-paths
key of thecomposer.json
file.For an example, see drupal-recommended-project.