Skip to content

Commit c1c0339

Browse files
authored
feat: allow org tokens for deployments (#26)
1 parent 59ef25f commit c1c0339

2 files changed

Lines changed: 21 additions & 20 deletions

File tree

main.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -314,12 +314,6 @@ deploy your local directory to the specified application.`)
314314
}
315315
const tokenEnv = options.token || Deno.env.get("DENO_DEPLOY_TOKEN");
316316
if (tokenEnv) {
317-
if (tokenEnv.startsWith("ddo_")) {
318-
error(
319-
options.debug,
320-
"Organization tokens cannot be used for the 'deno deploy' subcommand.",
321-
);
322-
}
323317
token_storage.set(tokenEnv, true);
324318
}
325319
})

util.ts

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -76,21 +76,28 @@ export async function withApp(
7676
// deno-lint-ignore no-explicit-any
7777
}> = await (trpcClient.orgs as any).list.query();
7878

79-
const selectedOrg = promptSelect(
80-
"Select an organization:",
81-
orgs.map((org) => ({ label: `${org.name} (${org.slug})`, value: org })),
82-
{
83-
clear: true,
84-
},
85-
);
86-
if (!selectedOrg) {
87-
console.error("No organization was selected.");
88-
Deno.exit(1);
79+
let fullOrg;
80+
if (orgs.length === 1) {
81+
fullOrg = orgs[0];
82+
org = orgs[0].slug;
83+
} else {
84+
const selectedOrg = promptSelect(
85+
"Select an organization:",
86+
orgs.map((org) => ({ label: `${org.name} (${org.slug})`, value: org })),
87+
{
88+
clear: true,
89+
},
90+
);
91+
if (!selectedOrg) {
92+
console.error("No organization was selected.");
93+
Deno.exit(1);
94+
}
95+
96+
fullOrg = selectedOrg.value;
97+
org = selectedOrg.value.slug;
98+
console.log(`Selected organization '${selectedOrg.value.name}'`);
8999
}
90100

91-
org = selectedOrg.value.slug;
92-
console.log(`Selected organization '${selectedOrg.value.name}'`);
93-
94101
if (app === null) {
95102
return {
96103
org,
@@ -102,7 +109,7 @@ export async function withApp(
102109
// deno-lint-ignore no-explicit-any
103110
await (trpcClient.apps as any)
104111
.list.query({
105-
org: selectedOrg.value.id,
112+
org: fullOrg.id,
106113
});
107114
const appStrings: PromptEntry<{ name: string; slug: string } | null>[] =
108115
apps.map((app) => ({ label: app.slug, value: app }));

0 commit comments

Comments
 (0)