diff --git a/apps/angular-tofu-showcase-e2e/playwright.config.ts b/apps/angular-tofu-showcase-e2e/playwright.config.ts index 071f5cd..9767af2 100644 --- a/apps/angular-tofu-showcase-e2e/playwright.config.ts +++ b/apps/angular-tofu-showcase-e2e/playwright.config.ts @@ -26,7 +26,7 @@ export default defineConfig({ webServer: { command: 'npx nx run angular-tofu-showcase:serve', url: 'http://localhost:4200', - reuseExistingServer: !process.env.CI, + reuseExistingServer: false, //!process.env.CI, cwd: workspaceRoot, }, projects: [ diff --git a/builds/ci-build/src/build-it-lib/runtime/build-context.ts b/builds/ci-build/src/build-it-lib/runtime/build-context.ts index beb4bf2..965eab6 100644 --- a/builds/ci-build/src/build-it-lib/runtime/build-context.ts +++ b/builds/ci-build/src/build-it-lib/runtime/build-context.ts @@ -10,7 +10,13 @@ export class BuildContext { logLevel = LogLevel.Info; + isCI = this.determineCIEnvironment(); + getTasks(ctor: constructor) { container.resolve(ctor); } + + private determineCIEnvironment() { + return process.env.GITHUB_ACTIONS === 'true'; + } } diff --git a/builds/ci-build/src/build-it-lib/runtime/build-executor.ts b/builds/ci-build/src/build-it-lib/runtime/build-executor.ts index 42edb7d..1107e17 100644 --- a/builds/ci-build/src/build-it-lib/runtime/build-executor.ts +++ b/builds/ci-build/src/build-it-lib/runtime/build-executor.ts @@ -47,6 +47,8 @@ export class BuildExecutor { } private async runBuild(buildDefinition: BuildDefinition, targets: string[]) { + this.logger.log('Is running on CI build server:', this.buildContext.isCI); + const buildTargets = this.findBuildTargets(buildDefinition, targets); this.buildContext.targets = buildTargets.map((t) => t.name); diff --git a/builds/ci-build/src/build-it-lib/tasks/nx-tasks.ts b/builds/ci-build/src/build-it-lib/tasks/nx-tasks.ts index 5bfafd3..b10b70f 100644 --- a/builds/ci-build/src/build-it-lib/tasks/nx-tasks.ts +++ b/builds/ci-build/src/build-it-lib/tasks/nx-tasks.ts @@ -18,6 +18,7 @@ export class NxTasks extends BuildTasks { } async executeNxCommand(command: string) { + this.logger.log(`Executing Nx command: ${command}`); return await this.cmdExecutor.executeStream(`npx nx ${command}`); } @@ -26,6 +27,11 @@ export class NxTasks extends BuildTasks { return this.executeNxCommand(`affected -t ${targets.join(' ')} ${baseArg}`); } + async runTargetsForAll(targets: string[]) { + const baseArg = this.base ? `--base=${this.base}` : ''; + return this.executeNxCommand(`run-many -t ${targets.join(' ')} ${baseArg}`); + } + async setReleaseVersion(version: string) { return this.executeNxCommand( `release version ${version} --stage-changes=false --git-commit=false` @@ -33,13 +39,18 @@ export class NxTasks extends BuildTasks { } async releaseAndPublish(projectName: string, access: string) { - //run angular-tofu:nx-release-publish --access public const args = [ 'run', `${projectName}:nx-release-publish`, `--access ${access}`, + '--dryRun', //'--registry=https://registry.npmjs.org/', ]; + + if (this.context.dryRun) { + args.push('--dry-run'); + } + return this.executeNxCommand(args.join(' ')); } } diff --git a/builds/ci-build/src/the-build.ts b/builds/ci-build/src/the-build.ts index 4b48688..591b23a 100644 --- a/builds/ci-build/src/the-build.ts +++ b/builds/ci-build/src/the-build.ts @@ -78,7 +78,7 @@ export class TheBuild extends BuildDefinition { name: 'nxTargets', execute: async (buildContext) => { this.logger.log('GitVersion:', await this.gitVersion.value.getVersion()); - await this.nxTasks.runTargetForAffected(['lint', 'test', 'build', 'e2e']); + await this.nxTasks.runTargetsForAll(['lint', 'test', 'build', 'e2e']); }, dependsOn: [this.setReleaseVersion], };