@docupace/pipeline 1.0.7-alpha.ervins1.26 → 1.0.7-alpha.ervins1.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@docupace/pipeline",
3
- "version": "1.0.7-alpha.ervins1.26",
3
+ "version": "1.0.7-alpha.ervins1.3",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "type": "module",
@@ -22,8 +22,7 @@ import {
22
22
  process.env.COMMON_VAULT_PATH = process.env.COMMON_VAULT_PATH || 'secret/data/common/config';
23
23
  process.env.VAULT_SKIP_VERIFY = process.env.VAULT_SKIP_VERIFY || 'true';
24
24
  process.env.CONNECT_DIR = process.env.CONNECT_DIR || 'connect';
25
- const vaultToken = process.env.VAULT_TOKEN;
26
- const vaultAddr = process.env.VAULT_ADDR;
25
+
27
26
 
28
27
  function log(msg) {
29
28
  console.log(`[*] ${msg}`);
@@ -41,19 +40,22 @@ function log(msg) {
41
40
  log(`Cloning ${destDir} repository...`);
42
41
  }
43
42
 
43
+ // Since we use zx, the environment variables can be read from process.env
44
+ // e.g. $BITBUCKET_USERNAME, $BITBUCKET_APP_PASSWORD
44
45
  const username = process.env.BITBUCKET_USERNAME;
45
46
  const password = process.env.BITBUCKET_APP_PASSWORD;
46
47
 
47
48
  // Construct clone command
48
49
  const cloneUrl = `https://${username}:${password}@bitbucket.org/dp-cloud/${repository}.git`;
49
50
 
50
- log(`Perform cloning`);
51
+ // Perform the clone
51
52
  await $`git clone --branch=${branch} --depth 1 ${cloneUrl} ${destDir}`;
52
53
  }
53
54
 
54
55
 
55
56
 
56
-
57
+ const vaultToken = process.env.VAULT_TOKEN;
58
+ const vaultAddr = process.env.VAULT_ADDR;
57
59
 
58
60
 
59
61
  export async function connectClone() {
@@ -84,8 +86,8 @@ export async function connectClone() {
84
86
  process.env.AUTH0_CLIENT_ID = siteCommonSecrets.AUTH0_CLIENT_ID;
85
87
  process.env.AUTH0_CLIENT_SECRET = siteCommonSecrets.AUTH0_CLIENT_SECRET;
86
88
 
87
-
88
- process.env.AUTH0_REGION_DOMAIN="us.auth0.com";
89
+ process.env.AUTH0_SUBDOMAIN="docupace-${BUILD_ENVIRONMENT}-${BUILD_SITE}"
90
+ process.env.AUTH0_REGION_DOMAIN="us.auth0.com"
89
91
 
90
92
  log(`BUILD_ENVIRONMENT: ${process.env.BUILD_ENVIRONMENT}`);
91
93
  log(`BUILD_SITE: ${process.env.BUILD_SITE}`);
@@ -93,23 +95,21 @@ export async function connectClone() {
93
95
  log(`AUTH0_REGION_DOMAIN: ${process.env.AUTH0_REGION_DOMAIN}`);
94
96
  log(`AUTH0_CLIENT_ID: ${process.env.AUTH0_CLIENT_ID}`);
95
97
 
96
- process.env.AUTH0_DOMAIN = `docupace-${process.env.BUILD_ENVIRONMENT}-${process.env.BUILD_SITE}.${process.env.AUTH0_REGION_DOMAIN}`;
98
+ process.env.AUTH0_DOMAIN = `${process.env.AUTH0_SUBDOMAIN}.${process.env.AUTH0_REGION_DOMAIN}`;
97
99
 
98
100
 
99
101
  const projectRoot = process.cwd();
100
102
  // 4) Clone 'connect-deploy' into CONNECT_DIR
101
-
102
-
103
103
  await gitCheckout('connect-deploy', process.env.CONNECT_DIR);
104
- await gitCheckout(`${process.env.BUILD_ENVIRONMENT}-site-settings`, `${process.env.CONNECT_DIR}/${process.env.BUILD_ENVIRONMENT}-site-settings`);
105
-
104
+
106
105
  // 5) Create site clone (emulating the dock.sh call)
107
- const cloneFrom = path.join(projectRoot,process.env.CONNECT_DIR,`envs`,`${process.env.FROM_BUILD_ENVIRONMENT}/${process.env.FROM_BUILD_SITE}`);
108
- const cloneTo = path.join(projectRoot,process.env.CONNECT_DIR,`envs`,`${process.env.BUILD_ENVIRONMENT}/${process.env.BUILD_SITE}`);
106
+ const cloneFrom = path.join(projectRoot,process.env.CONNECT_DIR,`${process.env.FROM_BUILD_ENVIRONMENT}/${process.env.FROM_BUILD_SITE}`);
107
+ const cloneTo = path.join(projectRoot,process.env.CONNECT_DIR,`${process.env.BUILD_ENVIRONMENT}/${process.env.BUILD_SITE}`);
108
+ log(`projectRoot: ${projectRoot}`);
109
+ const connectHome = path.join(projectHome,process.env.CONNECT_DIR);
109
110
 
110
- const connectHome = path.join(projectRoot,process.env.CONNECT_DIR);
111
111
  if (!(await fs.pathExists(cloneFrom))) {
112
- log('Clone template directory not found:');
112
+ log('Clone template directory not found');
113
113
  process.exit(1);
114
114
  }
115
115
 
@@ -117,48 +117,15 @@ export async function connectClone() {
117
117
  if (!(await fs.pathExists(cloneTo))) {
118
118
  log('New site does not exist. Performing cloning...');
119
119
 
120
- process.env.IMAGE_VERSION=await $`cd ${cloneFrom} && grep -E '^IMAGE_VERSION=' dock.sh | cut -f2 -d=`
121
- log(`Image version: ${process.env.IMAGE_VERSION}` );
122
- //await $`cd ${cloneFrom} && bash dock.sh clone ${process.env.BUILD_ENVIRONMENT} ${process.env.BUILD_SITE} ${process.env.IMAGE_VERSION}`;
123
- await (async () => {
124
- try {
125
- // Execute the shell command
126
- const result = await $`cd ${cloneFrom} && bash dock.sh clone ${process.env.BUILD_ENVIRONMENT} ${process.env.BUILD_SITE} ${process.env.IMAGE_VERSION}`;
127
- console.log('Command succeeded:');
128
- console.log('stdout:', result.stdout); // Standard output
129
- console.log('stderr:', result.stderr); // Standard error
130
- } catch (error) {
131
- console.error('Command failed:');
132
- console.error('Exit Code:', error._code); // Exit code of the command
133
- console.error('Signal:', error._signal); // Signal that caused termination (if any)
134
- console.error('stdout:', error._stdout); // Standard output
135
- console.error('stderr:', error._stderr); // Standard error
136
- }
137
- })();
138
-
139
-
120
+ process.env.IMAGE_VERSION=$`cd ${cloneFrom} && grep -E '^IMAGE_VERSION=' dock.sh | cut -f2 -d=`
121
+ await $`cd ${cloneTo} && bash dock.sh clone ${process.env.BUILD_ENVIRONMENT} ${process.env.BUILD_SITE} ${process.env.IMAGE_VERSION}`;
140
122
  } else {
141
123
  log('Site already exists. Continuing Auth0 setup...');
142
124
  }
143
125
 
144
-
145
- await (async () => {
146
- try {
147
- // Execute the shell command
148
- const result = await $`cd ${cloneTo} && bash dock.sh getAuth0Metadata`;
149
- console.log('Command succeeded:');
150
- console.log('stdout:', result.stdout); // Standard output
151
- console.log('stderr:', result.stderr); // Standard error
152
- } catch (error) {
153
- console.error('Command failed:');
154
- console.error('Exit Code:', error._code); // Exit code of the command
155
- console.error('Signal:', error._signal); // Signal that caused termination (if any)
156
- console.error('stdout:', error._stdout); // Standard output
157
- console.error('stderr:', error._stderr); // Standard error
158
- }
159
- })();
160
-
161
126
 
127
+ await $`cd ${cloneTo} && bash dock.sh getAuth0Metadata`;
128
+
162
129
  // 7) Check conf files, print logs
163
130
  await $`grep "auth0" ${path.join(cloneTo, 'conf/application.conf')}`;
164
131
  await $`ls -all ${path.join(cloneTo, 'conf')}`;
package/src/next/vault.js CHANGED
@@ -1,39 +1,13 @@
1
- import axios from 'axios';
1
+ import { $ } from 'zx';
2
2
 
3
- export async function vaultAddSiteData(SITE) {
4
- const AUTH0_CLIENT_ID = process.env.AUTH0_CLIENT_ID;
5
- const AUTH0_CLIENT_SECRET = process.env.AUTH0_CLIENT_SECRET;
6
- const VAULT_ADDR = process.env.VAULT_ADDR; // Vault host URL from environment variables
7
- const VAULT_TOKEN = process.env.VAULT_TOKEN; // Vault token from environment variables
8
-
9
- if (!VAULT_ADDR || !VAULT_TOKEN) {
10
- throw new Error('Missing VAULT_ADDR or VAULT_TOKEN environment variable.');
11
- }
12
3
 
13
- const vaultApiUrl = `${VAULT_ADDR}/v1/secret/data/dp-${SITE}/common/config`;
4
+ export async function vaultAddSiteData(SITE) {
5
+ const AUTH0_CLIENT_ID = `${process.env.AUTH0_CLIENT_ID}`;
6
+ const AUTH0_CLIENT_SECRET = `${process.env.AUTH0_CLIENT_SECRET}`;
7
+ await $`export VAULT_SKIP_VERIFY=true`;
8
+ await $`vault kv put secret/dp-${SITE}/common/config AUTH0_CLIENT_ID="${AUTH0_CLIENT_ID}" AUTH0_CLIENT_SECRET="${AUTH0_CLIENT_SECRET}"`
9
+ }
14
10
 
15
- try {
16
- const response = await axios.post(
17
- vaultApiUrl,
18
- {
19
- data: {
20
- AUTH0_CLIENT_ID: AUTH0_CLIENT_ID,
21
- AUTH0_CLIENT_SECRET: AUTH0_CLIENT_SECRET,
22
- },
23
- },
24
- {
25
- headers: {
26
- 'X-Vault-Token': VAULT_TOKEN,
27
- 'Content-Type': 'application/json',
28
- },
29
- }
30
- );
31
11
 
32
- console.log('Data added to Vault successfully:', response.data);
33
- } catch (error) {
34
- console.error('Error adding data to Vault:', error.response?.data || error.message);
35
- throw error;
36
- }
37
- }
38
12
 
39
13