https://github.com/fourkitchens/example-acquia-8-composer
Continuous Integration with Circle CI for Acquia using Drupal 8
https://github.com/fourkitchens/example-acquia-8-composer
Last synced: about 1 year ago
JSON representation
Continuous Integration with Circle CI for Acquia using Drupal 8
- Host: GitHub
- URL: https://github.com/fourkitchens/example-acquia-8-composer
- Owner: fourkitchens
- Created: 2017-10-15T14:34:27.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2021-04-08T09:23:57.000Z (about 5 years ago)
- Last Synced: 2025-03-27T18:22:22.840Z (about 1 year ago)
- Language: PHP
- Size: 290 KB
- Stars: 9
- Watchers: 1
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Example Acquia Drupal 8 Site with CI
## Setup
### Git Repo
Copy over the following folders and files to your repository
- circle
- config
- docroot/sites/default/settings.php
- drush
- gulp-tasks
- hooks
- .eslintignore
- .eslintrc
- .gitignore
- .phpcsignore
- circle.yml
- composer.json
- gulp-config.js
- gulpfile.js
- package.json
Feel free to switch out the asset building pieces and linting pieces with your
own. Also to affect the local and prod builds see drush/drushrc.php
### Circle CI
Set up the following Environment Variables on your project.
- `ACQUIA_USER`
Cloud API E-mail
- `ACQUIA_TOKEN`
Cloud API Private key. Located in your profile under security.
See: https://docs.acquia.com/acquia-cloud/api/auth
- `ACQUIA_CANONICAL_ENV`
Environment to get database from. Usually "prod".
- `ACQUIA_ENDPOINT`
Cloud API Endpoint. Usually "https://cloudapi.acquia.com/v1".
- `ACQUIA_REALM`
Cloud API Realm. Usually "prod" or "devcloud".
See: https://docs.acquia.com/acquia-cloud/api#realm
- `ACQUIA_SITE`
Cloud API Site parameter.
- `ACQUIA_REPO`
Acquia git repo url.
- `ACQUIA_BOT_EMAIL`
Email used to commit deployment commits.
- `ACQUIA_BOT_NAME`
Display name use for the deployment committer.
Add a ssh key via CircleCI's SSH Permissions page for the user you use with
Acquia that can commit to the repository.
### Acquia
Following the technique documented at [Acquia](https://docs.acquia.com/acquia-cloud/files/system-files/private), ssh into your Acquia environment and run the following:
- `ACQUIA_USER`
Cloud API E-mail
- `ACQUIA_TOKEN`
Cloud API Private key. Located in your profile under security.
See: https://docs.acquia.com/acquia-cloud/api/auth
- `ACQUIA_CANONICAL_ENV`
Environment to get database from. Usually "prod".
- `ACQUIA_ENDPOINT`
Cloud API Endpoint. Usually "https://cloudapi.acquia.com/v1".
```
mkdir /mnt/gfs/home/[REPLACE_WITH_SITE]/[REPLACE_WITH_ENV]/nobackup/
echo "ACQUIA_USER=user@email.com" >> /mnt/gfs/home/[REPLACE_WITH_SITE]/[REPLACE_WITH_ENV]/nobackup/bashkeys.sh
echo "ACQUIA_TOKEN=[REPLACE_WITH_ACQUIA_TOKEN]" >> /mnt/gfs/home/[REPLACE_WITH_SITE]/[REPLACE_WITH_ENV]/nobackup/bashkeys.sh
```
## References
If you wish to see a super detailed walkthrough of how it works, see this
[presentation](https://camp.drupal.cornell.edu/sessions/continuous-integration-acquia).