eitri-cli 1.2.0-beta.1 → 1.2.0
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/.vscode/settings.json +3 -1
- package/README.md +1 -1
- package/bitbucket-pipelines.yml +12 -0
- package/config/dev.js +2 -2
- package/config/k8s-eitri.js +1 -1
- package/config/loc-eitri.js +1 -1
- package/config/prod-eitri.js +13 -11
- package/developer-folder/README.md +1 -0
- package/index.js +4 -4
- package/install-dev.sh +1 -1
- package/package.json +2 -1
- package/src/cmd/create.js +12 -12
- package/src/cmd/credentials.js +1 -1
- package/src/cmd/login.js +2 -2
- package/src/cmd/manage-env.js +4 -4
- package/src/cmd/tail-logs.js +3 -3
- package/src/modules/vegvisir/VegvisirService.js +2 -2
- package/src/modules/vegvisir/cmd/list.js +2 -1
- package/src/service/AuthConfig.js +9 -12
- package/src/service/BlindGuardian.js +16 -19
- package/src/service/ConfigService.js +0 -7
- package/src/service/CredentialsService.js +2 -2
- package/src/service/EitriAppManager.js +2 -2
- package/src/service/Http.js +3 -3
- package/src/service/InviteService.js +2 -2
- package/src/service/Server.js +7 -7
- package/src/service/TargetService.js +2 -2
- package/src/service/TrackingEitriAnalytics.js +2 -2
- package/src/service/Workspace.js +9 -5
- package/src/service/WorkspaceManager.js +4 -4
- package/src/service/factories/DoubtsStarterFactory.js +2 -2
- package/src/util/UserLocalCredential.js +6 -4
- package/test/Executor.js +46 -0
- package/test/Helper.js +13 -0
- package/test/cmd/clean.test.js +3 -3
- package/test/cmd/create.test.js +7 -7
- package/test/e2e/cli.test.js +68 -0
- package/test/service/Workspace.test.js +17 -17
- package/test/cmd/credentials.test.js +0 -159
- package/test/cmd/signup.test.js +0 -20
- package/test/cmd/start.test.js +0 -5
|
@@ -1,159 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-undef */
|
|
2
|
-
const path = require('path')
|
|
3
|
-
const {workspace} = require('../../src/service/Workspace')
|
|
4
|
-
const { panicCheckEnvList, environmentVariable, buildEnvFile, sendEnvfile } = require('../../src/util/manage-env')
|
|
5
|
-
const config = require('config')
|
|
6
|
-
const CONFIG_WORKSPACE = config.get('workspace')
|
|
7
|
-
const nock = require('nock')
|
|
8
|
-
const ManageEnvService = require('../../src/service/ManageEnvService')
|
|
9
|
-
const manageEnvService = new ManageEnvService()
|
|
10
|
-
|
|
11
|
-
describe('manage-env', () => {
|
|
12
|
-
const MOCK = true
|
|
13
|
-
const blindGuardian = workspace.blindGuardian
|
|
14
|
-
|
|
15
|
-
beforeEach(() => {
|
|
16
|
-
nock.cleanAll()
|
|
17
|
-
})
|
|
18
|
-
|
|
19
|
-
afterEach(() => {
|
|
20
|
-
nock.cleanAll()
|
|
21
|
-
})
|
|
22
|
-
|
|
23
|
-
it('should fail when envList is empty', async () => {
|
|
24
|
-
expect.assertions(2)
|
|
25
|
-
try {
|
|
26
|
-
panicCheckEnvList([])
|
|
27
|
-
} catch (e) {
|
|
28
|
-
expect(e).toBeDefined()
|
|
29
|
-
expect(e.message).toBe('Nenhuma variavel de ambiente foi fornecida.')
|
|
30
|
-
}
|
|
31
|
-
})
|
|
32
|
-
|
|
33
|
-
it('should fail with wrong key', async () => {
|
|
34
|
-
expect.assertions(2)
|
|
35
|
-
try {
|
|
36
|
-
const envList = ['0FOO=bar']
|
|
37
|
-
environmentVariable(envList)
|
|
38
|
-
} catch (e) {
|
|
39
|
-
expect(e).toBeDefined()
|
|
40
|
-
expect(e.message).toEqual('A chave 0FOO é inválida')
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
})
|
|
44
|
-
|
|
45
|
-
it('should return a object', async () => {
|
|
46
|
-
const envList = ['FOO=bar', 'DEV=back-end']
|
|
47
|
-
const envVariable = environmentVariable(envList)
|
|
48
|
-
expect(envVariable).toEqual({ FOO: 'bar', DEV: 'back-end' })
|
|
49
|
-
})
|
|
50
|
-
|
|
51
|
-
it('should fail if there is no fileNames', () => {
|
|
52
|
-
expect.assertions(2)
|
|
53
|
-
try {
|
|
54
|
-
buildEnvFile('dev', [], { FOO: 'bar', DEV: 'back-end' }, 'miniapp-foo', '0.1.0')
|
|
55
|
-
} catch (e) {
|
|
56
|
-
expect(e).toBeDefined()
|
|
57
|
-
expect(e.message).toEqual('Não existe aquivo na pasta server.')
|
|
58
|
-
}
|
|
59
|
-
})
|
|
60
|
-
|
|
61
|
-
it('should send envFile to /colossus-api/v1', async () => {
|
|
62
|
-
let bodySentToServer, bodySentToCreateLambda
|
|
63
|
-
if (MOCK) {
|
|
64
|
-
nock(CONFIG_WORKSPACE.colossus.url, { allowUnmocked: true })
|
|
65
|
-
.post('/env', body => {
|
|
66
|
-
bodySentToServer = body
|
|
67
|
-
return true
|
|
68
|
-
})
|
|
69
|
-
.reply(200, { ok: true })
|
|
70
|
-
nock('https://dev.eitri.calindra.com.br', { allowUnmocked: true })
|
|
71
|
-
.post('/workspace/server', body => {
|
|
72
|
-
bodySentToCreateLambda = body
|
|
73
|
-
return true
|
|
74
|
-
})
|
|
75
|
-
.reply(200, { ok: true })
|
|
76
|
-
}
|
|
77
|
-
const folder2watch = path.resolve(__dirname, '..', '_fixtures', 'src')
|
|
78
|
-
workspace.setFolder2Watch(folder2watch)
|
|
79
|
-
blindGuardian.readConf()
|
|
80
|
-
|
|
81
|
-
workspace.setServerUrl(CONFIG_WORKSPACE.url)
|
|
82
|
-
await workspace.init()
|
|
83
|
-
try {
|
|
84
|
-
await workspace.postLambda(path.resolve(folder2watch, 'server', 'foo.js'), '/server/foo.js')
|
|
85
|
-
} catch (e) {
|
|
86
|
-
console.error(e)
|
|
87
|
-
throw e
|
|
88
|
-
}
|
|
89
|
-
let miniConf = workspace.getMiniConf()
|
|
90
|
-
const fileNames = await workspace.getFileNames('server')
|
|
91
|
-
|
|
92
|
-
const envFile = {
|
|
93
|
-
envCode: 'ws',
|
|
94
|
-
fileNames,
|
|
95
|
-
envVars: { FOO: 'bar', DEV: 'back-end' },
|
|
96
|
-
slug: miniConf.slug,
|
|
97
|
-
miniAppVersion: miniConf.version
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
const url = `${CONFIG_WORKSPACE.colossus.url}`
|
|
101
|
-
const resp = await sendEnvfile(workspace, url, envFile).catch(e => e)
|
|
102
|
-
expect(resp.constructor.name).not.toBe('Error')
|
|
103
|
-
expect(resp.data).toMatchObject({ ok: true })
|
|
104
|
-
if (MOCK) {
|
|
105
|
-
expect(bodySentToServer).toMatchObject({
|
|
106
|
-
envCode: 'ws',
|
|
107
|
-
fileNames,
|
|
108
|
-
envVars: { FOO: 'bar', DEV: 'back-end' },
|
|
109
|
-
slug: miniConf.slug,
|
|
110
|
-
miniAppVersion: miniConf.version
|
|
111
|
-
})
|
|
112
|
-
expect(bodySentToCreateLambda).toMatchObject({
|
|
113
|
-
'envCode': 'ws',
|
|
114
|
-
'miniAppVersion': '0.1.0',
|
|
115
|
-
'name': 'foo.js',
|
|
116
|
-
'publishing': false,
|
|
117
|
-
'slug': 'mini-app-colossus',
|
|
118
|
-
})
|
|
119
|
-
}
|
|
120
|
-
}, 60000)
|
|
121
|
-
|
|
122
|
-
it('should find environment variables', async () => {
|
|
123
|
-
const url = `${CONFIG_WORKSPACE.colossus.url}`
|
|
124
|
-
const query = {
|
|
125
|
-
env: 'ws',
|
|
126
|
-
slug: 'mini-app-colossus',
|
|
127
|
-
miniAppVersion: '0.1.0',
|
|
128
|
-
fileName: 'backend.js',
|
|
129
|
-
email: 'fabio.oshiro@gmail'
|
|
130
|
-
}
|
|
131
|
-
console.log('rota', CONFIG_WORKSPACE.colossus.url)
|
|
132
|
-
// https://dev.eitri.calindra.com.br/workspace/server?env=ws&slug=mini-app-colossus&miniAppVersion=0.1.0&fileName=backend.js&user=fabio.oshiro@gmail
|
|
133
|
-
nock('https://dev.eitri.calindra.com.br/workspace/server', { allowUnmocked: false })
|
|
134
|
-
.get('/env')
|
|
135
|
-
.query(query)
|
|
136
|
-
.reply(200, { FOO: 'BAR', BAR: 'FOO' })
|
|
137
|
-
|
|
138
|
-
const folder2watch = path.resolve(__dirname, '..', '_fixtures', 'src')
|
|
139
|
-
workspace.setFolder2Watch(folder2watch)
|
|
140
|
-
blindGuardian.readConf()
|
|
141
|
-
|
|
142
|
-
workspace.setServerUrl(CONFIG_WORKSPACE.url)
|
|
143
|
-
await workspace.init()
|
|
144
|
-
// await miniLog.connect(workspace.userEmail)
|
|
145
|
-
let miniConf = workspace.getMiniConf()
|
|
146
|
-
let envVariables
|
|
147
|
-
|
|
148
|
-
try {
|
|
149
|
-
envVariables = await manageEnvService.getEnvVariables(workspace, url, miniConf, 'ws', 'fabio.oshiro@gmail', 'backend.js')
|
|
150
|
-
} catch (e) {
|
|
151
|
-
console.error(e)
|
|
152
|
-
throw e
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
console.log('envVariables', envVariables)
|
|
156
|
-
|
|
157
|
-
expect(envVariables).toMatchObject({ FOO: 'BAR', BAR: 'FOO' })
|
|
158
|
-
})
|
|
159
|
-
})
|
package/test/cmd/signup.test.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-undef */
|
|
2
|
-
|
|
3
|
-
const signup = require('../../src/cmd/signup')
|
|
4
|
-
const nock = require('nock')
|
|
5
|
-
|
|
6
|
-
jest.setTimeout(15000)
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
describe('signup', () => {
|
|
10
|
-
|
|
11
|
-
it('Should succesfully create an user', () => {
|
|
12
|
-
|
|
13
|
-
nock('https://dev.eitri.calindra.com.br')
|
|
14
|
-
.post('/blind-guardian-api/v1/user')
|
|
15
|
-
.reply(200, { id: 'xpto', scopes: [ 'foo', 'bar' ] })
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
})
|
|
19
|
-
|
|
20
|
-
})
|