Git Product home page Git Product logo

openy-project's Introduction

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"
    }
]
  1. 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.

openy-project's People

Contributors

afi13 avatar aleksandrprykhodkodev avatar andreymaximov avatar anpolimus avatar anprok avatar ddrozdik avatar duozersk avatar goranmiric avatar ivan-berezhnov avatar kerby70 avatar kolesnikoff avatar nighthuntersv avatar podarok avatar ppbot avatar rahulusagility avatar sanchiz avatar svicervlad avatar ygerasimov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openy-project's Issues

Installation fails with "Required modules not found" error

As per documentation I executed the next commands.

composer create-project ymcatwincities/openy-project:8.1.x-development-dev MY_PROJECT --no-interaction
cd MY_PROJECT
vagrant up --prvosion
vagrant ssh
cd /var/www/docroot
sh reinstall.sh

And I got the result:

The following modules are required but were not found. Move them into
the appropriate modules subdirectory, such as <em>/modules</em>.
Missing modules: <div class="item-list--comma-list item-list"><ul
class="item-list__comma-list"><li><span
class="admin-missing">Plugin</span></li><li><span
class="admin-missing">Libraries</span></li><li><span
class="admin-missing">Openy_svg_formatter</span></li><li><span
class="admin-missing">Openy_media_image</span></li><li><span
class="admin-missing">Openy_media_document</span></li><li><span
class="admin-missing">Openy_media_video</span></li><li><span
class="admin-missing">Openy_node_mbrshp</span></li><li><span
class="admin-missing">Openy_node</span></li><li><span
class="admin-missing">Openy_block</span></li><li><span
class="admin-missing">Openy_block_basic</span></li><li><span

What is the proper way to download dependencies?

Update drupal-composer/drupal-scaffold to drupal/core-composer-scaffold

This is related to ymcatwincities/openy#1943, when openy is is updated, openy-project will need to update the composer file as well.

According to https://www.drupal.org/docs/develop/using-composer/using-drupals-composer-scaffold and https://www.palantir.net/blog/guide-drupal-8-8-update the dependency drupal-composer/drupal-scaffold should be updated to drupal/core-composer-scaffold. The last update to https://github.com/drupal-composer/drupal-scaffold/tree/2.6.1 was over a year ago, so it is probably abandoned as well.

Drush errors after installation

I've installed with and without the demo content, and with both installs I'm unable to use drush.

Drush version 8.1.15
PHP version 7.1.12 (also tried with 7.0.26)

I'm using Acquia DevDesktop for local hosting on a Mac High Sierra.

Without the demo content, I get the following error:
Argument 1 passed to Symfony\Component\Config\Resource\FileResource::__construct() [error] must be an instance of Symfony\Component\Config\Resource\string, string given, called in ~/Sites/acquiadevdesktop/openykc-dev/vendor/symfony/dependency-injection/ContainerBuilder.php on line 279 and defined FileResource.php:33

With demo content, I got an error during installation stating that Symfony\Component\DomCrawler\Crawler wasn't found, but otherwise the site looks like everything was imported.

Drush error says:
`PHP Parse error: syntax error, unexpected ':', expecting ';' or '{' in /Users/MattShoaf/Documents/workspace/YMCA/demo_open_y/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationRegistry.php on line 50

Parse error: syntax error, unexpected ':', expecting ';' or '{' in /Users/MattShoaf/Documents/workspace/YMCA/demo_open_y/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationRegistry.php on line 50
Drush command terminated abnormally due to an unrecoverable error. [error]
Error: syntax error, unexpected ':', expecting ';' or '{' in
/Users/MattShoaf/Documents/workspace/YMCA/demo_open_y/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationRegistry.php,
line 50`

If I push to the server, I can run drush commands when I remote in. Has anybody else had issues with Acquia DevDesktop and know what I need to do to fix this?

Composer is missing some dependencies

Im on latest Ubuntu 17.10 and composer create-project ymcatwincities/openy-project:8.1.x-development-dev openy --no-interaction is failing me.

PHP Version: PHP 7.1.12-2+ubuntu17.10.1+deb.sury.org+2
Composer version: 1.5.5

When I run above command I'm getting:

Installing ymcatwincities/openy-project (dev-8.1.x-development 55b92c71f6d6d473987a820aca83c082f143b162)
  - Installing ymcatwincities/openy-project (dev-8.1.x-development 8.1.x-development): Cloning 8.1.x-development from cache
Created project in openy
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - behat/mink-selenium2-driver v1.0.6 requires behat/mink ~1.4.3 -> satisfiable by behat/mink[v1.4.3] but these conflict with your requirements or minimum-stability.
    - behat/mink-selenium2-driver v1.0.5 requires behat/mink ~1.4.3 -> satisfiable by behat/mink[v1.4.3] but these conflict with your requirements or minimum-stability.
    - behat/mink-selenium2-driver v1.0.4 requires behat/mink >=1.4,<1.5-dev -> satisfiable by behat/mink[v1.4.0, v1.4.0beta1, v1.4.0beta2, v1.4.0beta3, v1.4.0beta4, v1.4.0beta5, v1.4.1, v1.4.2, v1.4.3] but these conflict with your requirements or minimum-stability.
    - behat/mink-selenium2-driver v1.0.3 requires behat/mink >=1.4,<1.5-dev -> satisfiable by behat/mink[v1.4.0, v1.4.0beta1, v1.4.0beta2, v1.4.0beta3, v1.4.0beta4, v1.4.0beta5, v1.4.1, v1.4.2, v1.4.3] but these conflict with your requirements or minimum-stability.
    - behat/mink-selenium2-driver v1.0.2 requires behat/mink >=1.4.0,<1.5.0 -> satisfiable by behat/mink[v1.4.0, v1.4.0beta1, v1.4.0beta2, v1.4.0beta3, v1.4.0beta4, v1.4.0beta5, v1.4.1, v1.4.2, v1.4.3] but these conflict with your requirements or minimum-stability.
    - behat/mink-selenium2-driver v1.0.1 requires behat/mink >=1.4.0,<1.5.0-dev -> satisfiable by behat/mink[v1.4.0, v1.4.0beta1, v1.4.0beta2, v1.4.0beta3, v1.4.0beta4, v1.4.0beta5, v1.4.1, v1.4.2, v1.4.3] but these conflict with your requirements or minimum-stability.
    - behat/mink-selenium2-driver v1.0.0 requires behat/mink >=1.4.0,<1.5.0-dev -> satisfiable by behat/mink[v1.4.0, v1.4.0beta1, v1.4.0beta2, v1.4.0beta3, v1.4.0beta4, v1.4.0beta5, v1.4.1, v1.4.2, v1.4.3] but these conflict with your requirements or minimum-stability.
    - instaclick/php-webdriver 1.4.5 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.4.4 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.4.3 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.4.2 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.4.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.4.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.3.0 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.2.2 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.2.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.2 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.1.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - instaclick/php-webdriver 1.1 requires ext-curl * -> the requested PHP extension curl is missing from your system.
    - behat/mink-selenium2-driver v1.1.1 requires behat/mink ~1.5.0 -> satisfiable by behat/mink[v1.5.0] but these conflict with your requirements or minimum-stability.
    - behat/mink-selenium2-driver v1.1.0 requires behat/mink ~1.5.0 -> satisfiable by behat/mink[v1.5.0] but these conflict with your requirements or minimum-stability.
    - integratedexperts/behat-screenshot 0.6.2 requires behat/mink-selenium2-driver * -> satisfiable by behat/mink-selenium2-driver[dev-master, 1.3.x-dev, v1.0.0, v1.0.1, v1.0.2, v1.0.3, v1.0.4, v1.0.5, v1.0.6, v1.1.0, v1.1.1, v1.2.0, v1.3.0, v1.3.1].
    - behat/mink-selenium2-driver 1.3.x-dev requires instaclick/php-webdriver ~1.1 -> satisfiable by instaclick/php-webdriver[1.1, 1.1.1, 1.2, 1.2.1, 1.2.2, 1.3.0, 1.4.0, 1.4.1, 1.4.2, 1.4.3, 1.4.4, 1.4.5].
    - behat/mink-selenium2-driver v1.2.0 requires instaclick/php-webdriver ~1.1 -> satisfiable by instaclick/php-webdriver[1.1, 1.1.1, 1.2, 1.2.1, 1.2.2, 1.3.0, 1.4.0, 1.4.1, 1.4.2, 1.4.3, 1.4.4, 1.4.5].
    - behat/mink-selenium2-driver v1.3.0 requires instaclick/php-webdriver ~1.1 -> satisfiable by instaclick/php-webdriver[1.1, 1.1.1, 1.2, 1.2.1, 1.2.2, 1.3.0, 1.4.0, 1.4.1, 1.4.2, 1.4.3, 1.4.4, 1.4.5].
    - behat/mink-selenium2-driver v1.3.1 requires instaclick/php-webdriver ~1.1 -> satisfiable by instaclick/php-webdriver[1.1, 1.1.1, 1.2, 1.2.1, 1.2.2, 1.3.0, 1.4.0, 1.4.1, 1.4.2, 1.4.3, 1.4.4, 1.4.5].
    - behat/mink-selenium2-driver dev-master requires instaclick/php-webdriver ~1.1 -> satisfiable by instaclick/php-webdriver[1.1, 1.1.1, 1.2, 1.2.1, 1.2.2, 1.3.0, 1.4.0, 1.4.1, 1.4.2, 1.4.3, 1.4.4, 1.4.5].
    - Installation request for integratedexperts/behat-screenshot ^0.6.2 -> satisfiable by integratedexperts/behat-screenshot[0.6.2].

  To enable extensions, verify that they are enabled in your .ini files:
    - /etc/php/7.1/cli/php.ini
    - /etc/php/7.1/cli/conf.d/10-opcache.ini
    - /etc/php/7.1/cli/conf.d/10-pdo.ini
    - /etc/php/7.1/cli/conf.d/20-calendar.ini
    - /etc/php/7.1/cli/conf.d/20-ctype.ini
    - /etc/php/7.1/cli/conf.d/20-exif.ini
    - /etc/php/7.1/cli/conf.d/20-fileinfo.ini
    - /etc/php/7.1/cli/conf.d/20-ftp.ini
    - /etc/php/7.1/cli/conf.d/20-gettext.ini
    - /etc/php/7.1/cli/conf.d/20-iconv.ini
    - /etc/php/7.1/cli/conf.d/20-json.ini
    - /etc/php/7.1/cli/conf.d/20-mbstring.ini
    - /etc/php/7.1/cli/conf.d/20-phar.ini
    - /etc/php/7.1/cli/conf.d/20-posix.ini
    - /etc/php/7.1/cli/conf.d/20-readline.ini
    - /etc/php/7.1/cli/conf.d/20-shmop.ini
    - /etc/php/7.1/cli/conf.d/20-sockets.ini
    - /etc/php/7.1/cli/conf.d/20-sysvmsg.ini
    - /etc/php/7.1/cli/conf.d/20-sysvsem.ini
    - /etc/php/7.1/cli/conf.d/20-sysvshm.ini
    - /etc/php/7.1/cli/conf.d/20-tokenizer.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

Installation Error

Just quick note... when installing the latest stable release with:

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

I get the following error:

[RuntimeException] Failed to clone https://github.com/kenwheeler/slick, git was not found, check that it is installed and in your PATH env.

Indeed it looks like that URL goes to a 404, and the slick module is not installed in /docroot/core/modules. Small thing, but wanted to post the findings.

openy.cibox.tools:4681 is refusing connections

This code:

{
"type": "composer",
"url": "https://openy.cibox.tools:4681"
},

is throwing an error:

[Composer\Downloader\TransportException] The "https://openy.cibox.tools:4681/packages.json" file could not be downloaded: failed to open stream: Connection refused"

when the one-line installer script is being run.

Removing those lines seems to allow composer install to run properly, so either the server should be fixed or we should remove these lines.

Enable exiting composer when a patch failes to apply

Currently patches just get skipped if they fail to apply. This is potentially hazardous to a core update (or others) in which a patch provided by OpenY may no longer apply but is allowed to pass installation and update.

I will put in a PR when I get a minute, but wanted this documented so I don't forget.

just need to add
"composer-exit-on-patch-failure": true,

This technically should apply to the main package as well for development, but is more important on the project for now.

Installation fails with error in Drupal\Core\Extension\ThemeHandler->addTheme()

After executing reinstall.sh the next error appears:

TypeError: Argument 1 passed to Drupal\Core\Extension\ThemeHandler::addTheme() must be an instance of Drupal\Core\Extension\Extension, null given, called in /var/www/docroot/core/includes/theme.maintenance.inc on line 74 in Drupal\Core\Extension\ThemeHandler->addTheme() (line 200 of /var/www/docroot/core/lib/Drupal/Core/Extension/ThemeHandler.php).

Host system: macOS High Sierra 10.13.1 (17B48)
Project initialization command: composer create-project ymcatwincities/openy-project:8.1.x-dev OpenY --no-interaction
Date of downloading vagrant box (u14.04php5.6.box): 17.11.2017

Any idea what's going wrong?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.