Skip to content

Commit 6da7976

Browse files
committed
fix(activate): activating with environment variables
Previously activating a build would not set any env vars, this fixes that. twilio-labs/serverless-toolkit#109
1 parent 2311b57 commit 6da7976

File tree

3 files changed

+32
-0
lines changed

3 files changed

+32
-0
lines changed

examples/activate.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
const { TwilioServerlessApiClient } = require('../dist');
2+
const serviceSid = process.argv[2];
3+
async function run() {
4+
const config = {
5+
accountSid: process.env.TWILIO_ACCOUNT_SID,
6+
authToken: process.env.TWILIO_AUTH_TOKEN,
7+
};
8+
9+
const client = new TwilioServerlessApiClient(config);
10+
console.log('Activating');
11+
const result = await client.activateBuild({
12+
...config,
13+
env: {},
14+
serviceSid,
15+
sourceEnvironment: 'test',
16+
targetEnvironment: 'stage3',
17+
createEnvironment: true,
18+
});
19+
console.log('Done Activating');
20+
console.dir(result);
21+
}
22+
23+
run().catch(console.error);

src/client.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,7 @@ export class TwilioServerlessApiClient extends events.EventEmitter {
318318
targetEnvironment,
319319
serviceSid,
320320
sourceEnvironment,
321+
env,
321322
} = activateConfig;
322323

323324
if (!buildSid && !sourceEnvironment) {
@@ -372,6 +373,12 @@ export class TwilioServerlessApiClient extends events.EventEmitter {
372373
throw new Error('Could not determine build SID');
373374
}
374375

376+
this.emit('status-update', {
377+
status: DeployStatus.SETTING_VARIABLES,
378+
message: 'Setting environment variables',
379+
});
380+
await setEnvironmentVariables(env, targetEnvironment, serviceSid, this);
381+
375382
const { domain_name } = await getEnvironment(
376383
targetEnvironment,
377384
serviceSid,

src/types/activate.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import { ClientConfig } from './client';
44
import { Sid } from './serverless-api';
5+
import { EnvironmentVariables } from './generic';
56

67
export type ActivateConfig = ClientConfig & {
78
force?: boolean;
@@ -10,6 +11,7 @@ export type ActivateConfig = ClientConfig & {
1011
buildSid?: Sid;
1112
targetEnvironment: string | Sid;
1213
sourceEnvironment?: string | Sid;
14+
env: EnvironmentVariables;
1315
};
1416

1517
export type ActivateResult = {

0 commit comments

Comments
 (0)