Compare commits
8
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b4c7042c17 | ||
|
|
6965787b33 | ||
|
|
ce064b8b0e | ||
|
|
0fc546fc6b | ||
|
|
77ac9e5ec2 | ||
|
|
af2c0b3695 | ||
|
|
811b22367d | ||
|
|
933d50e25a |
@@ -2,6 +2,10 @@ name: publish-github-action
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- "github-v*.*.*"
|
||||||
|
- "!github-v1"
|
||||||
|
|
||||||
concurrency: ${{ github.workflow }}-${{ github.ref }}
|
concurrency: ${{ github.workflow }}-${{ github.ref }}
|
||||||
|
|
||||||
@@ -18,12 +22,9 @@ jobs:
|
|||||||
|
|
||||||
- run: git fetch --force --tags
|
- run: git fetch --force --tags
|
||||||
|
|
||||||
- uses: oven-sh/setup-bun@v2
|
|
||||||
with:
|
|
||||||
bun-version: 1.2.17
|
|
||||||
|
|
||||||
- name: Publish
|
- name: Publish
|
||||||
run: |
|
run: |
|
||||||
git config --global user.email "opencode@sst.dev"
|
git config --global user.email "opencode@sst.dev"
|
||||||
git config --global user.name "opencode"
|
git config --global user.name "opencode"
|
||||||
./scripts/publish-github-action.ts
|
./script/publish
|
||||||
|
working-directory: ./sdks/github
|
||||||
|
|||||||
@@ -33,3 +33,4 @@ jobs:
|
|||||||
working-directory: ./sdks/vscode
|
working-directory: ./sdks/vscode
|
||||||
env:
|
env:
|
||||||
VSCE_PAT: ${{ secrets.VSCE_PAT }}
|
VSCE_PAT: ${{ secrets.VSCE_PAT }}
|
||||||
|
OPENVSX_TOKEN: ${{ secrets.OPENVSX_TOKEN }}
|
||||||
|
|||||||
@@ -84,40 +84,22 @@ export const InstallGithubCommand = cmd({
|
|||||||
let provider = await prompts.select({
|
let provider = await prompts.select({
|
||||||
message: "Select provider",
|
message: "Select provider",
|
||||||
maxItems: 8,
|
maxItems: 8,
|
||||||
options: [
|
options: pipe(
|
||||||
...pipe(
|
providers,
|
||||||
providers,
|
values(),
|
||||||
values(),
|
sortBy(
|
||||||
sortBy(
|
(x) => priority[x.id] ?? 99,
|
||||||
(x) => priority[x.id] ?? 99,
|
(x) => x.name ?? x.id,
|
||||||
(x) => x.name ?? x.id,
|
|
||||||
),
|
|
||||||
map((x) => ({
|
|
||||||
label: x.name,
|
|
||||||
value: x.id,
|
|
||||||
hint: priority[x.id] === 0 ? "recommended" : undefined,
|
|
||||||
})),
|
|
||||||
),
|
),
|
||||||
{
|
map((x) => ({
|
||||||
value: "other",
|
label: x.name,
|
||||||
label: "Other",
|
value: x.id,
|
||||||
},
|
hint: priority[x.id] === 0 ? "recommended" : undefined,
|
||||||
],
|
})),
|
||||||
|
),
|
||||||
})
|
})
|
||||||
|
|
||||||
if (prompts.isCancel(provider)) throw new UI.CancelledError()
|
if (prompts.isCancel(provider)) throw new UI.CancelledError()
|
||||||
if (provider === "other") {
|
|
||||||
provider = await prompts.text({
|
|
||||||
message: "Enter provider id",
|
|
||||||
validate: (x) => (x.match(/^[a-z-]+$/) ? undefined : "a-z and hyphens only"),
|
|
||||||
})
|
|
||||||
if (prompts.isCancel(provider)) throw new UI.CancelledError()
|
|
||||||
provider = provider.replace(/^@ai-sdk\//, "")
|
|
||||||
if (prompts.isCancel(provider)) throw new UI.CancelledError()
|
|
||||||
prompts.log.warn(
|
|
||||||
`This only stores a credential for ${provider} - you will need configure it in opencode.json, check the docs for examples.`,
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
return provider
|
return provider
|
||||||
}
|
}
|
||||||
@@ -211,7 +193,11 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
opencode:
|
opencode:
|
||||||
if: startsWith(github.event.comment.body, 'hey opencode')
|
if: |
|
||||||
|
startsWith(github.event.comment.body, 'opencode') ||
|
||||||
|
startsWith(github.event.comment.body, 'hi opencode') ||
|
||||||
|
startsWith(github.event.comment.body, 'hey opencode') ||
|
||||||
|
contains(github.event.comment.body, '@opencode-agent')
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
id-token: write
|
id-token: write
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
#!/usr/bin/env bun
|
|
||||||
|
|
||||||
import { $ } from "bun"
|
|
||||||
|
|
||||||
try {
|
|
||||||
await $`git tag -d github-v1`
|
|
||||||
await $`git push origin :refs/tags/github-v1`
|
|
||||||
} catch (e: any) {
|
|
||||||
if (e instanceof $.ShellError && e.stderr.toString().match(/tag \S+ not found/)) {
|
|
||||||
console.log("tag not found, continuing...")
|
|
||||||
} else {
|
|
||||||
throw e
|
|
||||||
}
|
|
||||||
}
|
|
||||||
await $`git tag -a github-v1 -m "Update github-v1 to latest"`
|
|
||||||
await $`git push origin github-v1`
|
|
||||||
Executable
+15
@@ -0,0 +1,15 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Get the latest Git tag
|
||||||
|
latest_tag=$(git tag --sort=committerdate | grep -E '^github-v[0-9]+\.[0-9]+\.[0-9]+$' | tail -1)
|
||||||
|
if [ -z "$latest_tag" ]; then
|
||||||
|
echo "No tags found"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "Latest tag: $latest_tag"
|
||||||
|
|
||||||
|
# Update github-v1 to latest
|
||||||
|
git tag -d github-v1
|
||||||
|
git push origin :refs/tags/github-v1
|
||||||
|
git tag -a github-v1 $latest_tag -m "Update github-v1 to $latest_tag"
|
||||||
|
git push origin github-v1
|
||||||
Executable
+41
@@ -0,0 +1,41 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Parse command line arguments
|
||||||
|
minor=false
|
||||||
|
while [ "$#" -gt 0 ]; do
|
||||||
|
case "$1" in
|
||||||
|
--minor) minor=true; shift 1;;
|
||||||
|
*) echo "Unknown parameter: $1"; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# Get the latest Git tag
|
||||||
|
git fetch --force --tags
|
||||||
|
latest_tag=$(git tag --sort=committerdate | grep -E '^github-v[0-9]+\.[0-9]+\.[0-9]+$' | tail -1)
|
||||||
|
if [ -z "$latest_tag" ]; then
|
||||||
|
echo "No tags found"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Latest tag: $latest_tag"
|
||||||
|
|
||||||
|
# Split the tag into major, minor, and patch numbers
|
||||||
|
IFS='.' read -ra VERSION <<< "$latest_tag"
|
||||||
|
|
||||||
|
if [ "$minor" = true ]; then
|
||||||
|
# Increment the minor version and reset patch to 0
|
||||||
|
minor_number=${VERSION[1]}
|
||||||
|
let "minor_number++"
|
||||||
|
new_version="${VERSION[0]}.$minor_number.0"
|
||||||
|
else
|
||||||
|
# Increment the patch version
|
||||||
|
patch_number=${VERSION[2]}
|
||||||
|
let "patch_number++"
|
||||||
|
new_version="${VERSION[0]}.${VERSION[1]}.$patch_number"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "New version: $new_version"
|
||||||
|
|
||||||
|
# Tag
|
||||||
|
git tag $new_version
|
||||||
|
git push --tags
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
#!/usr/bin/env bun
|
|
||||||
|
|
||||||
import { $ } from "bun"
|
|
||||||
|
|
||||||
try {
|
|
||||||
await $`git tag -d github-v1`
|
|
||||||
await $`git push origin :refs/tags/github-v1`
|
|
||||||
} catch (e: any) {
|
|
||||||
if (e instanceof $.ShellError && e.stderr.toString().match(/tag \S+ not found/)) {
|
|
||||||
console.log("tag not found, continuing...")
|
|
||||||
} else {
|
|
||||||
throw e
|
|
||||||
}
|
|
||||||
}
|
|
||||||
await $`git tag -a github-v1 -m "Update github-v1 to latest"`
|
|
||||||
await $`git push origin github-v1`
|
|
||||||
@@ -15,7 +15,7 @@
|
|||||||
"theme": "dark"
|
"theme": "dark"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"vscode": "^1.102.0"
|
"vscode": "^1.94.0"
|
||||||
},
|
},
|
||||||
"categories": [
|
"categories": [
|
||||||
"Other"
|
"Other"
|
||||||
|
|||||||
@@ -14,4 +14,7 @@ echo "Latest version: $version"
|
|||||||
vsce package --no-git-tag-version --no-update-package-json --no-dependencies --skip-license -o dist/opencode.vsix $version
|
vsce package --no-git-tag-version --no-update-package-json --no-dependencies --skip-license -o dist/opencode.vsix $version
|
||||||
|
|
||||||
# publish-marketplace
|
# publish-marketplace
|
||||||
vsce publish --packagePath dist/opencode.vsix
|
vsce publish --packagePath dist/opencode.vsix
|
||||||
|
|
||||||
|
# publish-openvsx
|
||||||
|
npx ovsx publish dist/opencode.vsix -p $OPENVSX_TOKEN
|
||||||
Reference in New Issue
Block a user