-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.ts
More file actions
39 lines (33 loc) · 1.1 KB
/
index.ts
File metadata and controls
39 lines (33 loc) · 1.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import * as docker from "@pulumi/docker";
import { local } from "@pulumi/command";
// Do a workspace install so the image doesn't have to
// TODO: .Install() hasn't made it to TS yet
// import { LocalWorkspace, LocalProgramArgs } from "@pulumi/pulumi/automation";
// const demoWorkspace = LocalWorkspace.createOrSelectStack({
// projectName: "runner",
// stackName: "dev",
// workDir: "./runner/proj",
// } as LocalProgramArgs)
// .then(ws => ws.workspace.Install());
const installResult = new local.Command("pinstall", {
create: "pulumi install",
dir: "./runner/proj"
});
// Create docker image
const demoImage = new docker.Image("demo-image", {
build: {
context: "./runner",
dockerfile: "runner/Dockerfile",
},
imageName: "demoorg/demo-image:main",
skipPush: true,
}, { dependsOn: installResult });
// Start the container
const demoContainer = new docker.Container("demo-container", {
name: "demo",
image: demoImage.id,
envs: [
`PULUMI_ACCESS_TOKEN=${process.env.PULUMI_ACCESS_TOKEN!}`
]
});
export const imageName = demoImage.imageName;