Skip to content

YCloudYUSA/yusaopeny

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

react-router

YMCA’s Website Service

https://ycloud.y.org/open-y-association-websites

An open-source platform for YMCAs, by YMCAs, built on Drupal.


The Y USA Website Services Project is a composer-based installer for the Y USA Website Services distribution.

Requirements

Composer

If you do not have Composer, you may install it by following the official instructions. For usage, see the documentation.

Installation

Clean install

If you are using internal tooling or only want the required code with no development environment, follow these steps.

Latest STABLE version

composer create-project ycloudyusa/yusaopeny-project MY_PROJECT --no-interaction
cd MY_PROJECT

Latest DEVELOPMENT version (Drupal 10+ 2.x)

composer create-project ycloudyusa/yusaopeny-project:dev-main-development MY_PROJECT --no-interaction --no-dev
cd MY_PROJECT

This command will build a project based on the Drupal 9/10 development branch release.

See a how-to video for the whole process of this command usage.

Development environment

To get an environment that was configured especially for development with the distribution, remove --no-dev from the composer command.

So it should look like this:

composer create-project ycloudyusa/yusaopeny-project:dev-main-development MY_PROJECT --no-interaction
cd MY_PROJECT

See a how-to video for the whole process of this command usage.

Docksal

Docksal is a tool for defining and managing development environments.

Read more details on Docksal repo.

Drupal install

The distribution has a full user interface for step-by-step installation. Simply visit your site after building your dev environment to be taken through the installation process.

For developers who want a kick-start, you can pass many configuration options in the install process through to drush site:install.

For example, a "complete" install with the "Carnation" theme might look like:

drush -vy si openy openy_configure_profile.preset=complete openy_theme_select.theme=openy_carnation openy_terms_of_use.agree_openy_terms=1 install_configure_form.enable_update_status_emails=NULL --account-name=admin --site-name='YMCA Website Services sandbox'

Use Fork for the development

All development happens in the Website Services Drupal 9/10 installation profile. To start development:

  1. Create a fork of Website Services installation profile
  2. Add your repository to composer.json
"repositories": [
    {
        "type": "vcs",
        "url": "https://github.com/GITHUB_USERNAME/yusaopeny"
    }
]
  1. Change a version for ycloudyusa/yusaopeny to dev-main or any other branch. E.g.:
  • branch name "bugfix" - version name dev-bugfix
  • branch name "feature/workflow" - version name dev-feature/workflow
"require": {
    "ycloudyusa/yusaopeny": "dev-main",
}
"require": {
    "ycloudyusa/yusaopeny": "dev-feature/workflow",
}
  1. Run composer update to update packages
  2. Add and commit changes in docroot/profiles/contrib/openy. Now it should be pointed to your fork.

Directory structure

Directory Purpose
Y USA Website Services
docroot/ Contains Drupal core
docroot/profiles/contrib/openy/ Contains Website Services distribution
vendor/ Contains Y USA Website Services distribution
composer.json Contains Y USA Website Services distribution
CIBox VM + CIBox Build
cibox/ Contains CIBox libraries
docroot/devops/ DevOps scripts for the installation process
provisioning/ Vagrant configuration
docroot/*.sh Bash scripts to trigger reinstall scripts
docroot/*.yml YAML playbooks for the installation process
Vagrantfile Vagrant index file
Docksal
.docksal/ Docksal configuration
build.sh Build script for Docksal environment

Documentation

Documentation about Website Services is available at docs. For details please visit https://ycloud.y.org/open-y-association-websites.

License

Y USA OpenY Project is licensed under the GPL-3.0. See the License file for details.

Languages

  • PHP 80.7%
  • Makefile 7.1%
  • Shell 4.2%
  • CSS 3.5%
  • JavaScript 2.9%
  • Twig 1.6%