Benjamin Melançon
909ef23f81
'<script defer data-domain=agaric.coop src=https://plausible.io/js/plausible.js></script>' :-) |
||
---|---|---|
.ddev | ||
.gitlab/issue_templates | ||
box | ||
config | ||
drush | ||
provisioning | ||
rakelib | ||
scripts | ||
web | ||
.gitignore | ||
.gitmodules | ||
composer.json | ||
composer.lock | ||
Makefile | ||
phpunit.xml | ||
Rakefile | ||
README.md | ||
redirects.txt | ||
SERVICES.md | ||
Vagrantfile |
Agaric's Flagship Site
See also SERVICES.md
Get submodules
This project includes the Agaric styleguide as a git submodule.
When cloning
git clone --recurse-submodules git@gitlab.com:agaric/sites/agaric-com.git
If you cloned without --recurse-submodules
If in your initial clone you didn't do as above, you can get the styleguide with:
git submodule init
git submodule update
Get started
To be able to import the configuration, you need to get the initializing database (where we will also be collaborating on content) from the test site pending resolution of drutopia#216.
ddev start
ddev auth ssh
ddev composer install
ddev . drush -y sql-dump > /tmp/paranoia.sql && drush sql-drop && drush -y sql-sync @live @self && drush -y updb
ddev . drush -y rsync @live:%files @self:%files
Get updates
git pull
git submodule update --recursive --remote
ddev start
ddev composer install
ddev . drush -y sql-dump > /tmp/paranoia.sql && drush -y sql-drop && drush -y sql-sync @live @self && drush -y updb
ddev . drush -y rsync @live:%files @self:%files
ddev . drush cim -y
Theming
See web/themes/custom/agarica/patternlibrary/README.md
for how to make changes, especially involving Sass to CSS compilation for styles.
After making changes withing the Pattern Library within the custom Agaric theme, commit these changes first to the pattern library itself, and second commit the pattern library as a whole to the main project (it will be a single change, "Subproject commit" and the current hash value of the subproject repository.
Deployment
Agaric is currently using a Platform as a Service version of Drutopia with additional modules.
Set up drutopia_host and hosting_private, as documented in hosting private.
Then use ahoy, from within the hosting_private directory.
Ensure all three related repositories are up-to-date with:
ahoy git-pull-all
If Agaric's Drutopia PaaS base has changed (the composer.lock in this directory), produce and push a new build:
ahoy deploy-build agaric
To deploy this build to an instance of the site plus config, templates, styles:
ahoy deploy-site agaric_test
(And likewise for agaric_live
.)
Then record the deployment. This applies to both deploy-site and deploy-build record keeping:
Navigate to /drutopia_host/build_artifacts
Add all new files generated with git add .
Commit the files with a message on what you deployed with git commit -m "Add artifacts"
Push the changes to the repo with git push
If you need to overwrite live configuration (only after confirming you've committed any parts you want to keep) you can use ahoy for that too with deploy-site-force
.
Drupal settings file management
The Drupal settings files are also managed by Drutopia. On each deploy, the file is generated and replaces the settings.local.php
that is on the server with whatever settings will match the Drutopia configuration. Therefore, in order to add settings, you must edit the vault settings using:
ahoy vault-edit
Look for the Yaml section for agaric_live, or agaric_test, as appropriate, and edit the php_settings_code section to add items to that site's setting overrides. For example:
...
online: True
php_settings_code: |2
$settings['super_secret'] = p@ssw0rd;
$config['life.answer'] = 42;
server_aliases:
- agaric.com
...
Code Hightlight.
The prism.js library was added in the site and can be used like this:
<pre>
<code class="language-css">
p { color: red }
</code>
</pre>
The suffix of the class needs to be changed depending of the language that is going to be highlighted eg: language-php
, language-js
etc.