Skip to content

Commit 413c025

Browse files
committed
Merge branch 'release/1.0.0'
2 parents 977dd83 + bd947e7 commit 413c025

File tree

7 files changed

+229
-59
lines changed

7 files changed

+229
-59
lines changed

config/VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v1.0.0-rc2
1+
v1.0.0

config/packages.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ drupal/acquia_purge: []
5757

5858
#drupal/acquia_search_solr: []
5959

60-
#drupal/acsf: []
60+
drupal/acsf: []
6161

6262
acquia/blt:
6363
type: composer-plugin

docs/getting-started.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -102,11 +102,11 @@ ORCA uses tags (for Behat) and groups (for PHPUnit) to determine which tests to
102102
103103
<!-- https://www.tablesgenerator.com/markdown_tables -->
104104
105-
| | (Default) | `orca_public` | `orca_ignore` |
106-
|----------------------------|:--------------:|:--------------:|:--------------:|
107-
| Isolated tests (own) | :black_circle: | :black_circle: | :white_circle: |
108-
| Integrated tests (own) | :black_circle: | :black_circle: | :white_circle: |
109-
| Integrated tests (others') | :white_circle: | :black_circle: | :white_circle: |
105+
| | (Default) | `orca_public` | `orca_ignore` |
106+
|----------------------------|:---------:|:-------------:|:-------------:|
107+
| Isolated tests (own) | ✓ | ✓ | |
108+
| Integrated tests (own) | ✓ | ✓ | |
109+
| Integrated tests (others') | || |
110110

111111
The default behavior is to run a test only when the package providing it is the SUT--not when it is merely included in another package's test fixture. Any test not designated public or ignored is so treated. Such tests are referred to as "private tests". This should be considered the correct choice for most tests--particularly for features that involve little or no risk of conflict with other Acquia packages, including [isolated unit tests](http://wiki.c2.com/?UnitTestIsolation) by definition.
112112

docs/understanding-orca.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,10 @@ ORCA includes out-of-the-box support for Travis CI for continuous integration. T
6868
| Fixture type | None | SUT-only | SUT-only | Standard | Standard | SUT-only | Standard | Standard |
6969
| Package stability | n/a | Stable | Stable | Stable | Stable | Dev | Dev | Dev |
7070
| Drupal core version | n/a | Current | Current | Current | Previous<br />minor release | Current | Current | Next<br />minor dev |
71-
| Static analysis | :black_circle: | :white_circle: | :white_circle: | :white_circle: | :white_circle: | :white_circle: | :white_circle: | :white_circle: |
72-
| Deprecated code scan | :white_circle: | :black_circle: | :white_circle: | :white_circle: | :white_circle: | :white_circle: | :white_circle: | :white_circle: |
73-
| Automated tests | :white_circle: | :white_circle: | :black_circle: | :black_circle: | :black_circle: | :black_circle: | :black_circle: | :black_circle: |
74-
| Allow failure | :white_circle: | :white_circle: | :white_circle: | :white_circle: | :white_circle: | :black_circle: | :black_circle: | :black_circle: |
75-
71+
| Static analysis || | | | | | | |
72+
| Deprecated code scan | || | | | | | |
73+
| Automated tests | | |||||||
74+
| Allow failure | | | | | ||||
7675
See [Configuring Travis CI](getting-started.md#configuring-travis-ci).
7776

7877
---

src/Command/Fixture/FixtureInitCommand.php

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -132,13 +132,14 @@ protected function configure() {
132132
['- Any version string Composer understands, see https://getcomposer.org/doc/articles/versions.md']
133133
)), DrupalCoreVersion::CURRENT_RECOMMENDED)
134134
->addOption('dev', NULL, InputOption::VALUE_NONE, 'Use dev versions of Acquia packages')
135-
->addOption('profile', NULL, InputOption::VALUE_REQUIRED, 'The Drupal installation profile to use, e.g., "minimal". ("orca" is a pseudo-profile based on "testing", with the Toolbar module enabled and Seven as the admin theme)', FixtureCreator::DEFAULT_PROFILE)
135+
->addOption('profile', NULL, InputOption::VALUE_REQUIRED, 'The Drupal installation profile to use, e.g., "minimal". ("orca" is a pseudo-profile based on "minimal", with the Toolbar module enabled and Seven as the admin theme)', FixtureCreator::DEFAULT_PROFILE)
136136

137137
// Uncommon options.
138138
->addOption('ignore-patch-failure', NULL, InputOption::VALUE_NONE, 'Do not exit on failure to apply Composer patches. (Useful for debugging failures)')
139139
->addOption('no-sqlite', NULL, InputOption::VALUE_NONE, 'Use the default BLT database includes instead of SQLite')
140140
->addOption('no-site-install', NULL, InputOption::VALUE_NONE, 'Do not install Drupal. Supersedes the "--profile" option')
141-
->addOption('prefer-source', NULL, InputOption::VALUE_NONE, 'Force installation of non-Acquia packages from sources when possible, including VCS information. (Acquia packages are always installed from source.) Useful for core and contrib work');
141+
->addOption('prefer-source', NULL, InputOption::VALUE_NONE, 'Force installation of non-Acquia packages from sources when possible, including VCS information. (Acquia packages are always installed from source.) Useful for core and contrib work')
142+
->addOption('symlink-all', NULL, InputOption::VALUE_NONE, 'Symlink all possible Acquia packages via local path repository. Packages absent from the expected location will be installed normally');
142143
}
143144

144145
/**
@@ -151,8 +152,9 @@ public function execute(InputInterface $input, OutputInterface $output): int {
151152
$sut = $input->getOption('sut');
152153
$sut_only = $input->getOption('sut-only');
153154
$core = $input->getOption('core');
155+
$symlink_all = $input->getOption('symlink-all');
154156

155-
if (!$this->isValidInput($sut, $sut_only, $bare, $core, $output)) {
157+
if (!$this->isValidInput($sut, $sut_only, $bare, $core, $symlink_all, $output)) {
156158
return StatusCode::ERROR;
157159
}
158160

@@ -166,6 +168,7 @@ public function execute(InputInterface $input, OutputInterface $output): int {
166168
$this->setProfile($input->getOption('profile'));
167169
$this->setSiteInstall($input->getOption('no-site-install'));
168170
$this->setSqlite($input->getOption('no-sqlite'));
171+
$this->setSymlinkAll($symlink_all);
169172

170173
try {
171174
$this->testPreconditions($sut);
@@ -201,6 +204,8 @@ public function execute(InputInterface $input, OutputInterface $output): int {
201204
* The "bare" option value.
202205
* @param string|string[]|bool|null $core
203206
* The "core" option value.
207+
* @param string|string[]|bool|null $symlink_all
208+
* The "symlink-all" option value.
204209
* @param \Symfony\Component\Console\Output\OutputInterface $output
205210
* The output decorator.
206211
*
@@ -209,12 +214,17 @@ public function execute(InputInterface $input, OutputInterface $output): int {
209214
*
210215
* @SuppressWarnings(PHPMD.StaticAccess)
211216
*/
212-
private function isValidInput($sut, $sut_only, $bare, $core, OutputInterface $output): bool {
217+
private function isValidInput($sut, $sut_only, $bare, $core, $symlink_all, OutputInterface $output): bool {
213218
if ($bare && $sut) {
214219
$output->writeln('Error: Cannot create a bare fixture with a SUT.');
215220
return FALSE;
216221
}
217222

223+
if ($bare && $symlink_all) {
224+
$output->writeln('Error: Cannot symlink all in a bare fixture.');
225+
return FALSE;
226+
}
227+
218228
if ($core && !$this->isValidCoreValue($core)) {
219229
$output->writeln([
220230
sprintf('Error: Invalid value for "--core" option: "%s".', $core),
@@ -397,6 +407,18 @@ private function setSqlite($no_sqlite): void {
397407
}
398408
}
399409

410+
/**
411+
* Sets the symlink all flag.
412+
*
413+
* @param string|string[]|bool|null $symlink_all
414+
* The symlink-all flag.
415+
*/
416+
private function setSymlinkAll($symlink_all): void {
417+
if ($symlink_all) {
418+
$this->fixtureCreator->setSymlinkAll(TRUE);
419+
}
420+
}
421+
400422
/**
401423
* Tests preconditions.
402424
*

0 commit comments

Comments
 (0)