kanopi / drupal-starter Goto Github PK
View Code? Open in Web Editor NEWA project starter for Drupal using Docksal, Composer, and CircleCI customized for Pantheon.
A project starter for Drupal using Docksal, Composer, and CircleCI customized for Pantheon.
sendgrid_integration
mimemail
htmlmail
https://github.com/kanopi/drupal-starter-theme
Doesn't need to be enabled, just included.
In our Kanilla project, which I based on this starter, we are seeing these errors...
Here are the details from one of these failed jobs...
It looks like we are missing some of the ingredients listed under Installation here, specifically the hub CLI tool and its configuration.
I think I could take a shot at submitting a PR for this, but I don't understand how to install the hub cli tool within circleci - is it just a matter of adding download steps to the circlci config.yml or would it be added to the orb itself?
https://www.drupal.org/project/permissions_filter
Most of the permissions pages are too large to scroll through and find what you want easily. This makes it a ton easier.
This is where we are copying example files into the proper place.
We should compare to Andy's examples in https://snippets.cacher.io/snippet/79427f0811b7c1011e07
All new starts should be on Drupal 9+ now. Can we change the name too be version agnostic?
Copy from Flagler!
Be sure to document scrollBehavior
as get
does not scroll to the element and may be covered by gin toolbar or a fixed menu.
cy.get('.tabs, .nav-tabs').contains('a','Edit').click({scrollBehavior: "nearest"});
As a developer I want to easily adjust the repo to work with pantheon
Make an Acquia specific Docksal and CircleCI folder in the future with docs.
Created after PR #36 which configured for Pantheon.
The starter theme site_theme included in this repository is based on Foundation 6 which is barely supported, and doesn't support best practices.
We should remove that theme, or replace it with another starter theme. We have had discussions around Emulsify. We also have the starter theme that we have been fine-tuning in build.
Noticed images come out blurry using GD2 image manipulation toolkit. When using imagemagick the image do not.
For clearer identification of where that happens.
For the ability to add more user based roles.
Thanks to @banoodle and @Stockfoot
cc: @paulsheldrake
https://www.drupal.org/project/oembed_providers
Because people want to embed more than just YouTubes and Vimeos.
#!/usr/bin/env bash
## Opens browser to virtualhost
##
## Usage: fin open
open http://${VIRTUAL_HOST}${NC}
Hi, I would like to help maintain this project.
The command fin share
implements ngrok which creates public URLs for demoing from your own machine or viewing on mobile devices.
Words should be added to the Readme about it.
Instead of outputting the entire report in the PR coversation, provide a link to the full report.
This prevents the PR conversation from getting super long and unwieldy.
ERROR: Cannot extend service 'db' in /Users/jasonsavino/.docksal/stacks/services.yml: Service not found
The newest docksal no longer uses db in the services.yml file. please update.
https://github.com/jkphl/gulp-svg-sprite
The idea is to take a folder of icons and automatically create a single SVG and a sass file to use to set iconography throughout a site.
In order to use the full power of Drupal 8's attach_library function, I would like to gain access to the individual Foundation and our theme's component files in the Drupal theme.
Could we add a new gulp task that would compile each foundation and theme .scss files to individual css files, and each foundation and theme .js file.
If that is possible, we should also build a list of files that get compiled instead of compiling them all. I believe we would have to remove the following from styles.scss
@import "utils/**/*.scss";
@import "settings";
@import "../node_modules/foundation-sites/scss/foundation";
@import "../node_modules/foundation-sites/scss/util/color";
@import "../node_modules/font-awesome/scss/font-awesome";
@include foundation-everything(true, true);
@import "base/**/*.scss";
@import "components/**/*.scss";
and list the components individually.
Instead of outputting the entire report in the PR coversation, provide a link to the full report.
This prevents the PR conversation from getting super long and unwieldy.
Let's not blow away Docker, but just reset the site with the cleanest code and a new database.
In /.circleci/scripts/pantheon/dev-multidev
, on lines 17-24, the multidev environment is created on pantheon.
if [[ $CI_BRANCH != "main" ]]
then
# Create a new multidev environment (or push to an existing one)
terminus -n build:env:create "$TERMINUS_SITE.dev" "$TERMINUS_ENV" --yes --clone-content
else
# Push to the dev environment
terminus -n build:env:push "$TERMINUS_SITE.dev" --yes
fi
According to the Pantheon docs, the --clone-content
flag "Clone(s) the content from the dev environment to the new multidev environment".
If we remove this flag, on multidev creation the database is pulled into the new environment because it is new. On subsequent pushes to the same branch, the multidev database will remain, keeping any previously staged content, instead of deleting the database and reimporting from dev.
Wouldn't this workflow be more beneficial to our build and support projects?
Noticed today that fin init is failing with ERROR: Cannot extend service 'db' in /Users/banoodle/.docksal/stacks/services.yml: Service not found
Changing row 18 of docksal.yml from db to myslq fixes the problem.
If you give me access to this repo I can push a PR for this.
On the explo project (which I based off of drupal-starter), we are seeing this error on the Pantheon Dashboard following a merge commit:
Unable to load Git token from secrets file
Quicksilver Pushback: Error
Looking at push-back.php, it appears the problem is it is looking for this file: "$privateFiles/.build-secrets/tokens.json", but it does not exist on the explo dev site. In fact I don't see the .build-secrets directory when I sftp into the Dev server and check in files/private.
I don't understand why the expected file is missing: whether that is something we are supposed to set up manually vs something the deployment scripts/webhooks are supposed to do?
I'm hoping Sean or Paul can advise/help with this one.
During startup
While trying to add changes from PR-15 to our Explo repo, I noticed this patch fails to apply completely:
"palantirnet/drupal-rector": {
"Access Level": "https://patch-diff.githubusercontent.com/raw/palantirnet/drupal-rector/pull/183.diff"
}
I believe the problem is that it attempts to patch 3 files that don't exist:
I needed to make a few small changes on my Flagler copy of drupal-starter in order for everything to work OK with Drupal 10.1, namely:
I am about to submit a PR that does the above things.
At the Kanopi retreat, I presented the idea of having an additional readme style document in each of our repositories to help add additional documentation to the project to help onboard new developers, pass off to support at the end of the build, and write case studies after the project launches.
This doc would define the development of the project, not just the code as a traditional readme file does.
kanopi.md
development.md
project-description.md
Use this space to describe the project, timeline, and client.
Add Kanopi and Client names and roles.
Teamwork
Github
Google Drive
Sketch Cloud
UXPin
etc
Add notes as you go. Which modules did you choose and why? Did you try anything that failed? Tell me ongoing stories about the project here
Describe how we're documenting this project. In some cases, the answer is "all in code/annotations and nothing else". In others it's a full MkDocs instance with user stories that are constantly updated throughout the life of the project.
TMI - Too Much Information
Inside jokes and other fun memes bring teams together when working on projects, but can feel exclusionary to new team members. List your jokes and personable notes here to help bring your new team members up to speed.
What else am I missing?
https://www.drupal.org/project/environment_indicator
https://www.drupal.org/project/environment_indicator_ribbon
Should be config in Cacher.
Problem: gulp sass and gulp uglify work great, but when you attempt gulp watch, you get this error...
Error: watching ./sass/**/*.scss: watch task has to be a function (optionally generated by using gulp.parallel or gulp.series) at Gulp.watch (/var/www/web/themes/custom/site_theme/node_modules/gulp/index.js:28:11) at /var/www/web/themes/custom/site_theme/gulpfile.js:54:8 at bound (domain.js:301:14) at runBound (domain.js:314:12) at asyncRunner (/var/www/web/themes/custom/site_theme/node_modules/async-done/index.js:55:18) at _combinedTickCallback (internal/process/next_tick.js:131:7) at process._tickCallback (internal/process/next_tick.js:180:9) [21:04:42] 'watch' errored after 55 ms
I researched this error a little and tried implementing the advice I found here: https://stackoverflow.com/a/39665899/2755365
But I couldn't get it to work. The following eliminates the error and even kind of looks like it's watching when you run the command, but nothing actually happens (if I change scss or js - it doesn't get compiled):
gulp.task('watch', function() { livereload.listen(); gulp.watch('sass/**/*.scss', gulp.series('sass')); gulp.watch('lib/*.js', gulp.series('uglify')); gulp.watch(['./css/styles.css', './**/*.twig', './js/*.js'], function (files){ livereload.changed(files) }); });
Sometimes I want to run critical without working on the theme. Should this be a thing?
thanks to @jasonrsavino
In fin init change
LEFTHOOK=$(which lefthook || true)
if [[ "${LEFTHOOK}" == "" ]]; then
echo -e "${green_bg} Setup ${NC}${green} Installing Lefthook...${NC}"
sudo curl -fsSL -o /usr/local/bin/lefthook "https://github.com/evilmartians/lefthook/releases/download/v0.7.7/lefthook_0.7.7_MacOS_x86_64"
sudo chmod +x /usr/local/bin/lefthook
fi
to this:
LEFTHOOK=$(which lefthook || true)
if [[ "${LEFTHOOK}" == "" ]]; then
echo -e "${green_bg} Setup ${NC}${green} Installing Lefthook...${NC}"
if [[ $(uname -p) == 'arm' ]];
then
sudo curl -fsSL -o /usr/local/bin/lefthook "https://github.com/evilmartians/lefthook/releases/download/v0.7.7/lefthook_0.7.7_MacOS_arm64"
else
sudo curl -fsSL -o /usr/local/bin/lefthook "https://github.com/evilmartians/lefthook/releases/download/v0.7.7/lefthook_0.7.7_MacOS_x86_64"
fi
sudo chmod +x /usr/local/bin/lefthook
fi
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.