Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Checking for config prior to import. #1275

Merged
merged 8 commits into from
Mar 31, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion phing/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ composer:

cm:
# Possible values: core-only, config-split, features, none.
strategy: none
strategy: config-split
core:
# The parent directory for configuration directories.
path: ${repo.root}/config
Expand Down
49 changes: 32 additions & 17 deletions phing/tasks/setup.xml
Original file line number Diff line number Diff line change
Expand Up @@ -228,31 +228,46 @@
</target>

<target name="setup:config-import:core-only">
<drush command="config-import" assume="yes" alias="${drush.alias}" passthru="false">
<param>${cm.core.key}</param>
</drush>

<if>
<available file="${cm.core.dirs.${cm.core.key}.path}/core.extension.yml"/>
<then>
<drush command="config-import" assume="yes" alias="${drush.alias}" passthru="false">
<param>${cm.core.key}</param>
</drush>
</then>
</if>

</target>

<target name="setup:config-import:config-split">
<drush command="en" assume="yes" alias="${drush.alias}" passthru="false">
<param>config_split</param>
</drush>

<!-- Only import config if it exists. -->
<if>
<and>
<isset property="env.AH_SITE_ENVIRONMENT"/>
<available file="${cm.core.path}/${env.AH_SITE_ENVIRONMENT}"/>
</and>
<available file="${cm.core.dirs.${cm.core.key}.path}/core.extension.yml"/>
<then>
<drush command="config-import" assume="yes" alias="${drush.alias}">
<!-- Cloud environments require vcs parameter. -->
<param>vcs</param>

<drush command="en" assume="yes" alias="${drush.alias}" passthru="false">
<param>config_split</param>
</drush>

<!-- Only import config if it exists. -->
<if>
<and>
<isset property="env.AH_SITE_ENVIRONMENT"/>
<available file="${cm.core.path}/${env.AH_SITE_ENVIRONMENT}"/>
</and>
<then>
<drush command="config-import" assume="yes" alias="${drush.alias}">
<!-- Cloud environments require vcs parameter. -->
<param>vcs</param>
</drush>
</then>
<else>
<drush command="config-import" assume="yes" alias="${drush.alias}"></drush>
</else>
</if>

</then>
<else>
<drush command="config-import" assume="yes" alias="${drush.alias}"></drush>
</else>
</if>

</target>
Expand Down
18 changes: 12 additions & 6 deletions scripts/travis/run_tests
Original file line number Diff line number Diff line change
Expand Up @@ -5,24 +5,30 @@ set -ev
source ${BLT_DIR}/scripts/blt/ci/shared/run_tests

# Build codebase, validate, install Drupal, run basic tests.
yaml-cli update:value blt/project.yml cm.strategy none
blt ci:build:validate:test -Dcreate_alias=false -Dbehat.run-server=true -Dblt.verbose=true
drush config-export --root=docroot -y

# Test config split.
mv ${BLT_DIR}/scripts/blt/ci/internal/config_split.config_split.ci.yml config/default/
drush en config_split --root=docroot -y
blt setup:config-import
drush pm-uninstall config_split --root=docroot -y

# Test core-only config management.
yaml-cli update:value blt/project.yml cm.strategy core-only
drush config-export --root=docroot -y
blt setup:config-import

# Test features config management.
yaml-cli update:value blt/project.yml cm.strategy features
rm -rf config/default/*
drush en features --root=docroot -y
drush config-export --root=docroot -y
blt setup:config-import
drush pm-uninstall features --root=docroot -y

# Test config split.
yaml-cli update:value blt/project.yml cm.strategy config-split
drush en config_split --root=docroot -y
drush config-export --root=docroot -y
mv ${BLT_DIR}/scripts/blt/ci/internal/config_split.config_split.ci.yml config/default/
blt setup:config-import
drush pm-uninstall config_split --root=docroot -y

# Run the doctor.
blt doctor
Expand Down