Skip to content

Instantly share code, notes, and snippets.

View jameswilson's full-sized avatar

James Wilson jameswilson

View GitHub Profile
jameswilson / .gitlab-ci.yml
Last active April 15, 2024 09:12
GitLab CI build and deploy to Acquia
- Deploy
# @todo implement a Build and Test step to verify code quality before deploy
# IMPORTANT: `acli push:artifact` leverages composer internally to build dependencies, so no separate build step is required.
'Deploy to Acquia':
image: php:8.2
stage: Deploy
jameswilson /
Created February 2, 2024 16:49
Acquia post-code-deploy tasks for Multisite Drupal 10, running Site Studio.
# Deployment script for Acquia Cloud Next on a multisite (non-Site Factory) setup.
# Place this file in your repository at hooks/common/post-code-deploy/
# See
cd "/var/www/html/$site.$target_env/docroot"
jameswilson /
Created October 30, 2023 14:09
Cohesion Git History explorer
# For an unknown reason, the Acquia Site Studio repositories package their
# releases in a way that prevents comparing code changes between releases.
# Maybe this is intentional as a kind of security through obscurity. Maybe it
# is unintentional and just a part of a flawed release practice. Either way,
# the source code is GPL'ed on Github which lends itself to being able to track
# the changes between versions. That is exactly what this script does.
## Usage:
## ./
jameswilson / ddev-drupal-core-install
Created September 11, 2023 17:06
joachim-n/drupal-core-development-project for DDEV
#!/usr/bin/env bash
# Create a local environment leveraging DDEV for the specified Drupal core version.
# Installation:
# store this file in your /usr/local/bin or ~/bin and ensure it shows up in your $PATH
# Usage:
# ddev-drupal-core-install 11.x (bleeding edge)
# ddev-drupal-core-install 10.2.x
jameswilson / .gitignore
Last active February 28, 2024 01:47
Configure DDEV for AWS CLI, and use an EC2 instance as a jumphost
# Add the following to your project's .gitignore
# The approach here assumes you're going to want to have the awscli also configured
# on your host OS, so we can just copy configs from ~/.aws/ on your host OS into the
# ddev web container during startup by way of the .ddev/homeadditions folder.
jameswilson / contact-form.css
Last active March 7, 2022 15:13 — forked from frjo/contact.php
PHP script for contact form
.contact-form input:not(:placeholder-shown):valid,
.contact-form textarea:not(:placeholder-shown):valid {
background-color: #f4feee;
.contact-form input:not(:placeholder-shown):invalid,
.contact-form textarea:not(:placeholder-shown):invalid {
background-color: #fff0f0;
jameswilson /
Last active August 17, 2020 14:28
Integrate Drupal 8 Toolbar w/ Bootstrap Fixed Top Nav
# Improve interoperability between MyTheme and the Drupal admin toolbar.
- mytheme/toolbar
jameswilson / Code.js
Last active April 27, 2021 03:41
Google Sheets XHR insert via GET request, respond with JSON status.
* @file
* Google Sheets XHR insert script.
* From:
* Setup instructions:
* 1. Create a new Google Sheet and add column names in Row 1.
* 2. Click "Tools" > "Script editor" from the toolbar.
jameswilson /
Last active March 9, 2018 23:17 — forked from lttlrck/gist:9628955
rename git branch locally and remotely
git checkout old_branch_name # Ensure you're on the local branch.
git branch -M new_branch_name # Rename branch locally.
git branch --unset-upstream # unset
git push origin :old_branch_name # Delete the old branch
git push -u origin new_branch_name # Push the new branch, set local branch to track the new remote
jameswilson / node.html.twig
Created January 25, 2018 00:22
Drupal 8 has_page_title
* @file
* Theme override to display a node.
* Available variables:
* - see Stable Theme's node.twig.html for standard variables.
* - has_page_title: Flag for page title block visibility. Will be true when
* the iu_page_title block is present on the page. This is useful to add the
* H1 inside the article when page title block not present.