ymcatwincities / openy-project

Open Y composer-based installer
GNU General Public License v3.0
8 stars 44 forks source link
community composer drupal installation-profile openy

react-router

Y USA Open YMCA

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

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


The Y USA Open Y Project is a composer based installer for the Y USA Open Y distribution.

Requirements

Composer

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

Installation

Latest STABLE version

composer create-project ymcatwincities/openy-project MY_PROJECT --no-interaction
cd MY_PROJECT

Latest DEVELOPMENT version (Drupal 9 2.x)

composer create-project ycloudyusa/yusaopeny-project:9.2.x-development-dev MY_PROJECT --no-interaction --no-dev
cd MY_PROJECT

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

See https://youtu.be/jRlinjpTl0c how to video for the whole process of this command usage.

Development environment

You should use composer command without --no-dev if you would like to get environment that was configured especially for OpenY. This means you'd remove Vagrant/Docksal from the code tree. So it should look like this:

composer create-project ycloudyusa/yusaopeny-project:9.2.x-development-dev MY_PROJECT --no-interaction
cd MY_PROJECT

See https://youtu.be/jRlinjpTl0c how to video for the whole process of this command usage.

CIBox VM

CIBox VM allows you to make a contribution into OpenY in a few minutes. Just follow steps and then you'll know how to do it.

Read more details on CIBox VM repo.

Docksal

Docksal is a tool for defining and managing development environments.

Read more details on Docksal repo.

Use Fork for the development

All development happens in the Open Y Drupal 9 installation profile. In order to start development:

  1. Create fork of Open Y installation profile

  2. Add your repository to composer.json

    "repositories": [
    {
        "type": "vcs",
        "url": "https://github.com/GITHUB_USERNAME/yusaopeny"
    }
    ]
  3. Change a version for ycloudyusa/yusaopeny to dev-9.x-2.x 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-9.x-2.x",
}
"require": {
    "ycloudyusa/yusaopeny": "dev-feature/workflow",
}
  1. Run composer update to update packages
  2. Add and commits changes in docroot/profiles/contrib/openy. Now it should be pointed to your fork.

Directory structure

Directory Purpose
Y USA Open Y
docroot/ Contains Drupal core
docroot/profiles/contrib/openy/ Contains Open Y distribution
vendor/ Contains Y USA Open Y distribution
composer.json Contains Y USA Open Y 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 Open Y 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.