+29
-12
.fluentci/src/dagger/jobs.ts
+29
-12
.fluentci/src/dagger/jobs.ts
···
61
"bc",
62
"pkg-config",
63
"libudev-dev",
64
])
65
.withExec(["mkdir", "-p", "/build/sysroot"])
66
.withExec([
···
68
"download",
69
"libasound2:armhf",
70
"libasound2-dev:armhf",
71
"libasound2:arm64",
72
"libasound2-dev:arm64",
73
])
74
.withExec([
75
"dpkg",
···
95
"libasound2_1.2.4-1.1_armhf.deb",
96
"/build/sysroot/",
97
])
98
.withDirectory("/app", context, { exclude })
99
.withWorkdir("/app")
100
.withMountedCache("/app/target", dag.cacheVolume("target"))
···
103
.withEnvVariable("RUSTFLAGS", rustflags)
104
.withEnvVariable(
105
"PKG_CONFIG_ALLOW_CROSS",
106
-
Deno.env.get("TARGET") !== "x86_64-unknown-linux-gnu" ? "1" : "0"
107
)
108
.withEnvVariable(
109
"C_INCLUDE_PATH",
110
Deno.env.get("TARGET") !== "x86_64-unknown-linux-gnu"
111
? "/build/sysroot/usr/include"
112
-
: "/usr/include"
113
)
114
.withEnvVariable("TAG", Deno.env.get("TAG") || "latest")
115
.withEnvVariable(
116
"TARGET",
117
-
Deno.env.get("TARGET") || "x86_64-unknown-linux-gnu"
118
)
119
.withExec([
120
"sh",
···
142
]);
143
144
const exe = await ctr.file(
145
-
`/app/tunein_${Deno.env.get("TAG")}_${Deno.env.get("TARGET")}.tar.gz`
146
);
147
await exe.export(
148
-
`./tunein_${Deno.env.get("TAG")}_${Deno.env.get("TARGET")}.tar.gz`
149
);
150
151
const sha = await ctr.file(
152
-
`/app/tunein_${Deno.env.get("TAG")}_${Deno.env.get("TARGET")}.tar.gz.sha256`
153
);
154
await sha.export(
155
-
`./tunein_${Deno.env.get("TAG")}_${Deno.env.get("TARGET")}.tar.gz.sha256`
156
);
157
return ctr.stdout();
158
};
···
160
export type JobExec = (src?: string) =>
161
| Promise<string>
162
| ((
163
-
src?: string,
164
-
options?: {
165
-
ignore: string[];
166
-
}
167
-
) => Promise<string>);
168
169
export const runnableJobs: Record<Job, JobExec> = {
170
[Job.test]: test,
···
61
"bc",
62
"pkg-config",
63
"libudev-dev",
64
+
"libdbus-1-dev",
65
])
66
.withExec(["mkdir", "-p", "/build/sysroot"])
67
.withExec([
···
69
"download",
70
"libasound2:armhf",
71
"libasound2-dev:armhf",
72
+
"libdbus-1-dev:armhf",
73
"libasound2:arm64",
74
"libasound2-dev:arm64",
75
+
"libdbus-1-dev:arm64",
76
])
77
.withExec([
78
"dpkg",
···
98
"libasound2_1.2.4-1.1_armhf.deb",
99
"/build/sysroot/",
100
])
101
+
.withExec([
102
+
"dpkg",
103
+
"-x",
104
+
"libdbus-1-dev_1.12.28-0+deb11u1_armhf.deb",
105
+
"/build/sysroot/",
106
+
])
107
+
.withExec([
108
+
"dpkg",
109
+
"-x",
110
+
"libdbus-1-dev_1.12.28-0+deb11u1_arm64.deb",
111
+
"/build/sysroot/",
112
+
])
113
.withDirectory("/app", context, { exclude })
114
.withWorkdir("/app")
115
.withMountedCache("/app/target", dag.cacheVolume("target"))
···
118
.withEnvVariable("RUSTFLAGS", rustflags)
119
.withEnvVariable(
120
"PKG_CONFIG_ALLOW_CROSS",
121
+
Deno.env.get("TARGET") !== "x86_64-unknown-linux-gnu" ? "1" : "0",
122
)
123
.withEnvVariable(
124
"C_INCLUDE_PATH",
125
Deno.env.get("TARGET") !== "x86_64-unknown-linux-gnu"
126
? "/build/sysroot/usr/include"
127
+
: "/usr/include",
128
)
129
.withEnvVariable("TAG", Deno.env.get("TAG") || "latest")
130
.withEnvVariable(
131
"TARGET",
132
+
Deno.env.get("TARGET") || "x86_64-unknown-linux-gnu",
133
)
134
.withExec([
135
"sh",
···
157
]);
158
159
const exe = await ctr.file(
160
+
`/app/tunein_${Deno.env.get("TAG")}_${Deno.env.get("TARGET")}.tar.gz`,
161
);
162
await exe.export(
163
+
`./tunein_${Deno.env.get("TAG")}_${Deno.env.get("TARGET")}.tar.gz`,
164
);
165
166
const sha = await ctr.file(
167
+
`/app/tunein_${Deno.env.get("TAG")}_${
168
+
Deno.env.get("TARGET")
169
+
}.tar.gz.sha256`,
170
);
171
await sha.export(
172
+
`./tunein_${Deno.env.get("TAG")}_${Deno.env.get("TARGET")}.tar.gz.sha256`,
173
);
174
return ctr.stdout();
175
};
···
177
export type JobExec = (src?: string) =>
178
| Promise<string>
179
| ((
180
+
src?: string,
181
+
options?: {
182
+
ignore: string[];
183
+
},
184
+
) => Promise<string>);
185
186
export const runnableJobs: Record<Job, JobExec> = {
187
[Job.test]: test,