Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
陈六生
code-server
提交
004c6082
C
code-server
项目概览
陈六生
/
code-server
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
code-server
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
004c6082
编写于
3月 25, 2021
作者:
R
repo-ranger[bot]
提交者:
GitHub
3月 25, 2021
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #2952 from cdr/jsjoeio/add-release-prep-script
dev: add release:prep script
上级
8332a6ab
305b8208
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
127 addition
and
18 deletion
+127
-18
.github/PULL_REQUEST_TEMPLATE/release_template.md
.github/PULL_REQUEST_TEMPLATE/release_template.md
+5
-3
ci/README.md
ci/README.md
+1
-12
ci/build/release-prep.sh
ci/build/release-prep.sh
+116
-0
ci/dev/update-vscode.sh
ci/dev/update-vscode.sh
+4
-3
package.json
package.json
+1
-0
未找到文件。
.github/PULL_REQUEST_TEMPLATE/release_template.md
浏览文件 @
004c6082
This PR is to generate a new release of
`code-server`
at
`0.0.0`
<!-- Note: this variable $CODE_SERVER_VERSION_TO_UPDATE will be set when you run the release-prep.sh script with `yarn release:prep` -->
This PR is to generate a new release of
`code-server`
at
`$CODE_SERVER_VERSION_TO_UPDATE`
## Screenshot
...
...
@@ -6,10 +8,10 @@ TODO
## TODOs
-
[ ] update the AUR package
-
[ ] upload assets to draft release
-
[ ] test locally
-
[ ] upload assets to draft release
-
[ ] double-check github release tag is the commit with artifacts
-
[ ] publish release
-
[ ] merge PR
-
[ ] update the homebrew package
-
[ ] update the AUR package
ci/README.md
浏览文件 @
004c6082
...
...
@@ -12,18 +12,7 @@ Any file or directory in this subdirectory should be documented here.
## Publishing a release
Make sure you have
`$GITHUB_TOKEN`
set and
[
hub
](
https://github.com/github/hub
)
installed.
1.
Update the version of code-server and make a PR.
1.
Update in
`package.json`
2.
Update in
[
./docs/install.md
](
../docs/install.md
)
3.
Update in
[
./ci/helm-chart/README.md
](
../ci/helm-chart/README.md
)
-
Remember to update the chart version as well on top of appVersion in
`Chart.yaml`
.
-
Run
`rg -g '!yarn.lock' -g '!*.svg' '3\.7\.5'`
to ensure all values have been
changed. Replace the numbers as needed.
-
You can install
`rg`
or
`ripgrep`
on macOS
[
here
](
https://formulae.brew.sh/formula/ripgrep
)
.
4.
Update the code coverage badge (see
[
here
](
#updating-code-coverage-in-readme
)
for instructions)
5.
Update the docs badge in
[
./README.md
](
../README.md
)
1.
Run
`yarn release:prep`
and type in the new version i.e. 3.8.1
2.
GitHub actions will generate the
`npm-package`
,
`release-packages`
and
`release-images`
artifacts.
1.
You do not have to wait for these.
3.
Run
`yarn release:github-draft`
to create a GitHub draft release from the template with
...
...
ci/build/release-prep.sh
0 → 100755
浏览文件 @
004c6082
#!/usr/bin/env bash
# Description: This is a script to make the release process easier
# Run it with `yarn release:prep` and it will do the following:
# 1. Check that you have a $GITHUB_TOKEN set and hub installed
# 2. Update the version of code-server (package.json, docs, etc.)
# 3. Update the code coverage badge in the README
# 4. Open a draft PR using the release_template.md and view in browser
# If you want to perform a dry run of this script run DRY_RUN=1 yarn release:prep
set
-euo
pipefail
main
()
{
if
[
"
${
DRY_RUN
-
}
"
=
1
]
;
then
echo
"Performing a dry run..."
CMD
=
"echo"
else
CMD
=
''
fi
cd
"
$(
dirname
"
$0
"
)
/../.."
# Check that $GITHUB_TOKEN is set
if
[[
-z
${
GITHUB_TOKEN
-
}
]]
;
then
echo
"We couldn't find an environment variable under GITHUB_TOKEN."
echo
"This is needed for our scripts that use hub."
echo
-e
"See docs regarding GITHUB_TOKEN here under 'GitHub OAuth authentication': https://hub.github.com/hub.1.html"
exit
fi
# Check that hub is installed
if
!
command
-v
hub &>/dev/null
;
then
echo
"hub could not be found."
echo
"We use this with the release-github-draft.sh and release-github-assets.sh scripts."
echo
-e
"See docs here: https://github.com/github/hub#installation"
exit
fi
# Check that they have jq installed
if
!
command
-v
jq &>/dev/null
;
then
echo
"jq could not be found."
echo
"We use this to parse the package.json and grab the current version of code-server."
echo
-e
"See docs here: https://stedolan.github.io/jq/download/"
exit
fi
# Check that they have rg installed
if
!
command
-v
rg &>/dev/null
;
then
echo
"rg could not be found."
echo
"We use this when updating files across the codebase."
echo
-e
"See docs here: https://github.com/BurntSushi/ripgrep#installation"
exit
fi
# Check that they have sd installed
if
!
command
-v
sd &>/dev/null
;
then
echo
"sd could not be found."
echo
"We use this when updating files across the codebase."
echo
-e
"See docs here: https://github.com/chmln/sd#installation"
exit
fi
# Check that they have node installed
if
!
command
-v
node &>/dev/null
;
then
echo
"node could not be found."
echo
"That's surprising..."
echo
"We use it in this script for getting the package.json version"
echo
-e
"See docs here: https://nodejs.org/en/download/"
exit
fi
# credit to jakwuh for this solution
# https://gist.github.com/DarrenN/8c6a5b969481725a4413#gistcomment-1971123
CODE_SERVER_CURRENT_VERSION
=
$(
node
-pe
"require('./package.json').version"
)
# Ask which version we should update to
# In the future, we'll automate this and determine the latest version automatically
echo
"Current version:
${
CODE_SERVER_CURRENT_VERSION
}
"
# The $'\n' adds a line break. See: https://stackoverflow.com/a/39581815/3015595
read
-r
-p
"What version of code-server do you want to update to?"
$'
\n
'
CODE_SERVER_VERSION_TO_UPDATE
echo
-e
"Great! We'll prep a PR for updating to
$CODE_SERVER_VERSION_TO_UPDATE
\n
"
$CMD
rg
-g
'!yarn.lock'
-g
'!*.svg'
--files-with-matches
--fixed-strings
"
${
CODE_SERVER_CURRENT_VERSION
}
"
|
$CMD
xargs sd
"
$CODE_SERVER_CURRENT_VERSION
"
"
$CODE_SERVER_VERSION_TO_UPDATE
"
# Ensure the tests are passing and code coverage is up-to-date
echo
-e
"Running unit tests and updating code coverage...
\n
"
$CMD
yarn
test
:unit
# Updates the Lines badge in the README
$CMD
yarn badges
# Updates the svg to be green for the badge
$CMD
sd
"red.svg"
"green.svg"
../../README.md
$CMD
git commit
-am
"chore(release): bump version to
$CODE_SERVER_VERSION_TO_UPDATE
"
# Note: we need to set upstream as well or the gh pr create step will fail
# See: https://github.com/cli/cli/issues/575
CURRENT_BRANCH
=
$(
git branch |
grep
'\*'
|
cut
-d
' '
-f2-
)
if
[[
-z
$(
git config
"branch.
${
CURRENT_BRANCH
}
.remote"
)
]]
;
then
echo
"Doesn't look like you've pushed this branch to remote"
echo
-e
"Pushing now using: git push origin
$CURRENT_BRANCH
\n
"
# Note: we need to set upstream as well or the gh pr create step will fail
# See: https://github.com/cli/cli/issues/575
echo
"Please set the upstream and re-run the script"
exit
1
fi
# This runs from the root so that's why we use this path vs. ../../
RELEASE_TEMPLATE_STRING
=
$(
cat
./.github/PULL_REQUEST_TEMPLATE/release_template.md
)
echo
-e
"
\n
Opening a draft PR on GitHub"
# To read about these flags, visit the docs: https://cli.github.com/manual/gh_pr_create
$CMD
gh
pr
create
--base
main
--title
"release:
$CODE_SERVER_VERSION_TO_UPDATE
"
--body
"
$RELEASE_TEMPLATE_STRING
"
--reviewer
@cdr/code-server-reviewers
--repo
cdr/code-server
--draft
# Open PR in browser
$CMD
gh
pr
view
--web
}
main
"
$@
"
ci/dev/update-vscode.sh
浏览文件 @
004c6082
...
...
@@ -81,13 +81,14 @@ main() {
# Push branch to remote if not already pushed
# If we don't do this, the opening a draft PR step won't work
# because it will stop and ask where you want to push the branch
CURRENT_BRANCH
=
$(
git branch
--show-current
)
if
[[
-z
$(
git
ls-remote
--heads
origin
"
$CURRENT_BRANCH
"
)
]]
;
then
CURRENT_BRANCH
=
$(
git branch
|
grep
'\*'
|
cut
-d
' '
-f2-
)
if
[[
-z
$(
git
config
"branch.
${
CURRENT_BRANCH
}
.remote
"
)
]]
;
then
echo
"Doesn't look like you've pushed this branch to remote"
echo
-e
"Pushing now using: git push origin
$CURRENT_BRANCH
\n
"
# Note: we need to set upstream as well or the gh pr create step will fail
# See: https://github.com/cli/cli/issues/575
git push
-u
origin
"
$CURRENT_BRANCH
"
echo
"Please set the upstream and re-run the script"
exit
1
fi
echo
"Going to try to update vscode for you..."
...
...
package.json
浏览文件 @
004c6082
...
...
@@ -16,6 +16,7 @@
"release:standalone"
:
"./ci/build/build-standalone-release.sh"
,
"release:github-draft"
:
"./ci/build/release-github-draft.sh"
,
"release:github-assets"
:
"./ci/build/release-github-assets.sh"
,
"release:prep"
:
"./ci/build/release-prep.sh"
,
"test:e2e"
:
"./ci/dev/test-e2e.sh"
,
"test:standalone-release"
:
"./ci/build/test-standalone-release.sh"
,
"test:unit"
:
"./ci/dev/test-unit.sh"
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录