@nrwl/workspace 14.0.0-beta.1 → 14.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/generators.json CHANGED
@@ -141,6 +141,12 @@
141
141
  "schema": "./src/generators/npm-package/schema.json",
142
142
  "description": "Create a minimal NPM package.",
143
143
  "x-type": "library"
144
+ },
145
+
146
+ "ci-workflow": {
147
+ "factory": "./src/generators/ci-workflow/ci-workflow#ciWorkflowGenerator",
148
+ "schema": "./src/generators/ci-workflow/schema.json",
149
+ "description": "Generete a CI workflow."
144
150
  }
145
151
  }
146
152
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nrwl/workspace",
3
- "version": "14.0.0-beta.1",
3
+ "version": "14.0.0-beta.2",
4
4
  "description": "Smart, Fast and Extensible Build System.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -32,26 +32,26 @@
32
32
  "requirements": {},
33
33
  "migrations": "./migrations.json",
34
34
  "packageGroup": {
35
- "@nrwl/angular": "14.0.0-beta.1",
36
- "@nrwl/cypress": "14.0.0-beta.1",
37
- "@nrwl/devkit": "14.0.0-beta.1",
38
- "@nrwl/eslint-plugin-nx": "14.0.0-beta.1",
39
- "@nrwl/express": "14.0.0-beta.1",
40
- "@nrwl/jest": "14.0.0-beta.1",
41
- "@nrwl/linter": "14.0.0-beta.1",
42
- "@nrwl/nest": "14.0.0-beta.1",
43
- "@nrwl/next": "14.0.0-beta.1",
44
- "@nrwl/node": "14.0.0-beta.1",
45
- "@nrwl/nx-plugin": "14.0.0-beta.1",
46
- "@nrwl/react": "14.0.0-beta.1",
47
- "@nrwl/storybook": "14.0.0-beta.1",
48
- "@nrwl/web": "14.0.0-beta.1",
49
- "@nrwl/js": "14.0.0-beta.1",
50
- "@nrwl/cli": "14.0.0-beta.1",
35
+ "@nrwl/angular": "14.0.0-beta.2",
36
+ "@nrwl/cypress": "14.0.0-beta.2",
37
+ "@nrwl/devkit": "14.0.0-beta.2",
38
+ "@nrwl/eslint-plugin-nx": "14.0.0-beta.2",
39
+ "@nrwl/express": "14.0.0-beta.2",
40
+ "@nrwl/jest": "14.0.0-beta.2",
41
+ "@nrwl/linter": "14.0.0-beta.2",
42
+ "@nrwl/nest": "14.0.0-beta.2",
43
+ "@nrwl/next": "14.0.0-beta.2",
44
+ "@nrwl/node": "14.0.0-beta.2",
45
+ "@nrwl/nx-plugin": "14.0.0-beta.2",
46
+ "@nrwl/react": "14.0.0-beta.2",
47
+ "@nrwl/storybook": "14.0.0-beta.2",
48
+ "@nrwl/web": "14.0.0-beta.2",
49
+ "@nrwl/js": "14.0.0-beta.2",
50
+ "@nrwl/cli": "14.0.0-beta.2",
51
51
  "@nrwl/nx-cloud": "latest",
52
- "@nrwl/react-native": "14.0.0-beta.1",
53
- "@nrwl/detox": "14.0.0-beta.1",
54
- "nx": "14.0.0-beta.1"
52
+ "@nrwl/react-native": "14.0.0-beta.2",
53
+ "@nrwl/detox": "14.0.0-beta.2",
54
+ "nx": "14.0.0-beta.2"
55
55
  }
56
56
  },
57
57
  "peerDependencies": {
@@ -84,9 +84,9 @@
84
84
  "minimatch": "3.0.4",
85
85
  "enquirer": "~2.3.6",
86
86
  "tslib": "^2.3.0",
87
- "nx": "14.0.0-beta.1",
88
- "@nrwl/devkit": "14.0.0-beta.1",
89
- "@nrwl/jest": "14.0.0-beta.1",
90
- "@nrwl/linter": "14.0.0-beta.1"
87
+ "nx": "14.0.0-beta.2",
88
+ "@nrwl/devkit": "14.0.0-beta.2",
89
+ "@nrwl/jest": "14.0.0-beta.2",
90
+ "@nrwl/linter": "14.0.0-beta.2"
91
91
  }
92
92
  }
@@ -0,0 +1,6 @@
1
+ import { Tree } from '@nrwl/devkit';
2
+ export interface Schema {
3
+ name?: string;
4
+ ci: 'github' | 'azure' | 'circleci';
5
+ }
6
+ export declare function ciWorkflowGenerator(host: Tree, schema: Schema): Promise<void>;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ciWorkflowGenerator = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const devkit_1 = require("@nrwl/devkit");
6
+ const default_base_1 = require("../../utilities/default-base");
7
+ function ciWorkflowGenerator(host, schema) {
8
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
9
+ const ci = schema.ci;
10
+ const options = normalizeOptions(schema);
11
+ (0, devkit_1.generateFiles)(host, (0, devkit_1.joinPathFragments)(__dirname, 'files', ci), '', options);
12
+ });
13
+ }
14
+ exports.ciWorkflowGenerator = ciWorkflowGenerator;
15
+ function normalizeOptions(options) {
16
+ const { name: workflowName, fileName: workflowFileName } = (0, devkit_1.names)(options.name || 'build');
17
+ const { exec: packageManagerPrefix, ciInstall: packageManagerInstall } = (0, devkit_1.getPackageManagerCommand)();
18
+ return {
19
+ workflowName,
20
+ workflowFileName,
21
+ packageManagerInstall,
22
+ packageManagerPrefix,
23
+ mainBranch: (0, default_base_1.deduceDefaultBase)(),
24
+ tmpl: '',
25
+ };
26
+ }
27
+ //# sourceMappingURL=ci-workflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ci-workflow.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/generators/ci-workflow/ci-workflow.ts"],"names":[],"mappings":";;;;AAAA,yCAMsB;AACtB,+DAAiE;AAOjE,SAAsB,mBAAmB,CAAC,IAAU,EAAE,MAAc;;QAClE,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAEzC,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAA,0BAAiB,EAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;IAC9E,CAAC;CAAA;AALD,kDAKC;AAWD,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,IAAA,cAAK,EAC9D,OAAO,CAAC,IAAI,IAAI,OAAO,CACxB,CAAC;IACF,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,SAAS,EAAE,qBAAqB,EAAE,GACpE,IAAA,iCAAwB,GAAE,CAAC;IAC7B,OAAO;QACL,YAAY;QACZ,gBAAgB;QAChB,qBAAqB;QACrB,oBAAoB;QACpB,UAAU,EAAE,IAAA,gCAAiB,GAAE;QAC/B,IAAI,EAAE,EAAE;KACT,CAAC;AACJ,CAAC"}
@@ -0,0 +1,67 @@
1
+ name: <%= workflowName %>
2
+
3
+ trigger:
4
+ - <%= mainBranch %>
5
+ pr:
6
+ - <%= mainBranch %>
7
+
8
+ variables:
9
+ - name: NX_CLOUD_DISTRIBUTED_EXECUTION
10
+ value: 'true'
11
+ - name: NX_BRANCH
12
+ ${{ if eq(variables['Build.Reason'], 'PullRequest') }}:
13
+ value: $(System.PullRequest.PullRequestNumber)
14
+ ${{ if ne(variables['Build.Reason'], 'PullRequest') }}:
15
+ value: $(Build.SourceBranchName)
16
+ - name: TARGET_BRANCH
17
+ ${{ if eq(variables['Build.Reason'], 'PullRequest') }}:
18
+ value: $[replace(variables['System.PullRequest.TargetBranch'],'refs/heads/','origin/')]
19
+ - name: BASE_SHA
20
+ ${{ if eq(variables['Build.Reason'], 'PullRequest') }}:
21
+ value: $(git merge-base $(TARGET_BRANCH) HEAD)
22
+ ${{ if ne(variables['Build.Reason'], 'PullRequest') }}:
23
+ value: $(git rev-parse HEAD~1)
24
+ - name: HEAD_SHA
25
+ value: $(git rev-parse HEAD)
26
+
27
+ jobs:
28
+ - job: agents
29
+ strategy:
30
+ parallel: 3
31
+ displayName: 'Nx Cloud Agent'
32
+ pool:
33
+ vmImage: 'ubuntu-latest'
34
+ steps:
35
+ <% if(packageManagerPrefix == 'pnpm exec'){ %>
36
+ - script: npm install --prefix=$HOME/.local -g pnpm@6.32.4
37
+ displayName: Install PNPM
38
+ <% } %>- script: <%= packageManagerInstall %>
39
+ displayName: NPM Install Dependencies
40
+ - script: npx nx-cloud start-agent
41
+ displayName: 'Start Nx-Cloud agent
42
+
43
+ - job: main
44
+ displayName: 'Nx Cloud Main'
45
+ pool:
46
+ vmImage: 'ubuntu-latest'
47
+ steps:
48
+ <% if(packageManagerPrefix == 'pnpm exec'){ %>
49
+ - script: npm install --prefix=$HOME/.local -g pnpm@6.32.4
50
+ displayName: Install PNPM
51
+ <% } %>- script: <%= packageManagerInstall %>
52
+ displayName: NPM Install Dependencies
53
+ - script: <%= packageManagerPrefix %> nx-cloud start-ci-run
54
+ displayName: Start CI run
55
+ - script: <%= packageManagerPrefix %> nx workspace-lint
56
+ displayName: Run workspace lint
57
+ - script: <%= packageManagerPrefix %> nx format:check --base=$(BASE_SHA) --head=$(HEAD_SHA)
58
+ displayName: Check format
59
+ - script: <%= packageManagerPrefix %> nx affected --base=$(BASE_SHA) --head=$(HEAD_SHA) --target=lint --parallel=3
60
+ displayName: Run lint
61
+ - script: <%= packageManagerPrefix %> nx affected --base=$(BASE_SHA) --head=$(HEAD_SHA) --target=test --parallel=3 --ci --code-coverage
62
+ displayName: Run test
63
+ - script: <%= packageManagerPrefix %> nx affected --base=$(BASE_SHA) --head=$(HEAD_SHA) --target=build --parallel=3
64
+ displayName: Run build
65
+ - script: <%= packageManagerPrefix %> nx-cloud stop-all-agents
66
+ condition: always()
67
+ displayName: Stop all Nx-Cloud agents
@@ -0,0 +1,35 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "NxWorkspaceCIWorkflow",
4
+ "title": "Generate a CI workflow.",
5
+ "description": "Generate a CI workflow.",
6
+ "cli": "nx",
7
+ "type": "object",
8
+ "properties": {
9
+ "ci": {
10
+ "type": "string",
11
+ "description": "CI provider.",
12
+ "enum": ["github", "circleci", "azure"],
13
+ "x-prompt": {
14
+ "message": "What is your target CI provider?",
15
+ "type": "list",
16
+ "items": [
17
+ { "value": "github", "label": "Github Actions" },
18
+ { "value": "circleci", "label": "Circle CI" },
19
+ { "value": "azure", "label": "Azure DevOps" }
20
+ ]
21
+ }
22
+ },
23
+ "name": {
24
+ "type": "string",
25
+ "description": "Workflow name.",
26
+ "$default": {
27
+ "$source": "argv",
28
+ "index": 0
29
+ },
30
+ "x-prompt": "How should we name your workflow?",
31
+ "pattern": "^[a-zA-Z].*$"
32
+ }
33
+ },
34
+ "required": ["ci"]
35
+ }
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.eslintConfigPrettierVersion = exports.eslintVersion = exports.typescriptESLintVersion = exports.tslintVersion = exports.prettierVersion = exports.typescriptVersion = exports.angularCliVersion = exports.nxVersion = void 0;
4
- exports.nxVersion = '14.0.0-beta.1';
4
+ exports.nxVersion = '14.0.0-beta.2';
5
5
  exports.angularCliVersion = '~13.3.0';
6
6
  exports.typescriptVersion = '~4.6.2';
7
7
  exports.prettierVersion = '^2.5.1';