mirror of
https://github.com/v2fly/v2ray-core.git
synced 2026-10-07 19:23:48 -07:00
release script relocation
This commit is contained in:
Executable
BIN
Binary file not shown.
Executable
+113
@@ -0,0 +1,113 @@
|
||||
|
||||
Ý;
|
||||
CNcn
|
||||
xn--fiqs8s
10010.com100offer.com115.com123juzi.com123juzi.net123u.com126.com126.net127.net163.com
17173.com
17cdn.com188.com1905.com21cn.com2288.org2345.com263.net2cto.com3322.org
|
||||
35.com
|
||||
360doc.com
|
||||
360buy.com
360buyimg.com360safe.com36kr.com
|
||||
39.net3dmgame.com3conline.com4399.com500d.me
|
||||
50bang.org 51.la51credit.com
51cto.com51jingying.com
51job.com51jobcdn.com
51wendang.com
|
||||
55.com
51yes.com
55bbs.com
|
||||
58.com
|
||||
6rooms.com 71.am7k7k.com
|
||||
900.la9718.com9xu.comabchina.comacfun.tvacgvideo.com
agrantsem.com
aicdn.comaixifan.comalibaba.com
|
||||
alicdn.comaliimg.com.com
|
||||
alipay.comalipayobjects.com
|
||||
aliyun.com
aliyuncdn.comaliyuncs.com
|
||||
allyes.comamap.com
|
||||
anjuke.com
|
||||
anquan.org
|
||||
appinn.combabytree.combabytreeimg.com
baidu.combaiducontent.combaidupcs.combaidustatic.combaifendian.combaifubao.com
baihe.com
baike.combaixing.combaixing.netbankcomm.combankofchina.combcy.net
bdimg.combdstatic.combilibili.comcn.bing.combitauto.combitautoimg.combobo.combootcss.combtcfans.com
caiyunapp.comccb.comcctv.comcctvpic.com
cdn20.comcebbank.com
|
||||
ch.com
chashebao.com
|
||||
che168.com
china.comchinacache.comchinacache.netchinahr.comchinamobile.comchinapay.comchinatranslation.net
|
||||
chinaz.comchiphell.com
|
||||
chouti.com
chuangxin.comchuansong.meclouddn.comcloudxns.comcmbchina.com
|
||||
cnbeta.com
cnbetacdn.comcnblogs.com
|
||||
cnepub.comcnzz.com
|
||||
coding.netcoolapk.com
cqvip.com
csbew.comcsdn.net
|
||||
ctfile.com
ctrip.com
|
||||
cubead.com
dajie.comdajieimg.comdangdang.comdaocloud.iodaovoice.io
dbank.comdedecms.com
dgtle.comdiandian.comdianping.com
|
||||
diopic.net
docin.com
dockerone.com
|
||||
dockone.io
|
||||
donews.com
|
||||
douban.com
douban.fmdoubanio.com
|
||||
dpfile.com
|
||||
duomai.comduoshuo.com
|
||||
duowan.comdxpmedia.comeastday.com
|
||||
ecitic.comemarbox.comeoeandroid.cometao.com
excelhome.net
fanli.comfeng.comfengniao.com
|
||||
fhldns.comfoxmail.comgeekpark.netgeetest.comgeilicdn.com
getui.comgoogle-analytics.com
growingio.com
gtags.net
|
||||
gwdang.com
|
||||
hao123.com
hao123img.com
|
||||
haosou.com
hdslb.com
henha.comhenkuai.com
hexun.comhichina.comhuanqiu.comhunantv.comhuochepiao.comhupu.comhupucdn.com
huxiu.comiask.com
iciba.comidqqimg.com
ifanr.comifanrusercontent.com
|
||||
ifanrx.com
ifeng.comifengimg.comijinshan.com
|
||||
ikafan.com
|
||||
imedao.comimgo.tv
imooc.com
infoq.cominfoqstatic.com
ip138.comipinyou.comipip.net
|
||||
ip-cdn.com
iqiyi.com
irs01.com
it165.net
it168.com
it610.com
iteye.com
|
||||
ithome.com
|
||||
itjuzi.com
|
||||
jandan.net
|
||||
jd.comjb51.comjia.comjianshu.com
|
||||
jianshu.iojiasuhui.comjiathis.comjiayuan.comjikexueyuan.comjisuanke.comjmstatic.comjsdelivr.netjstv.com
jumei.com
jyimg.com
kaixin001.com
|
||||
kanimg.com
kankanews.com
kejet.netkf5.com
|
||||
kimiss.com
|
||||
kouclo.com
|
||||
koudai.comkoudai8.comku6.com
|
||||
ku6cdn.com
|
||||
ku6img.com
kuqin.comlady8844.com
lagou.com
|
||||
le.comleanote.comleiphone.comleju.comleturich.orgletv.comletvcdn.comletvimg.com
liantu.meliaoxuefeng.comliba.comlibaclub.com
|
||||
liepin.com
|
||||
lietou.com
lightonus.comlinkvans.comlinuxidc.com
liuxiaoer.com
|
||||
lofter.com
|
||||
lu.com
lufax.comlufaxcdn.com
|
||||
lvmama.com
lxdns.com
lxway.com
|
||||
ly.com
|
||||
mayihr.commechina.org
|
||||
mediav.com
|
||||
meiqia.commeika360.com
meilishuo.commeishij.netmeituan.com
meizu.commgtv.com
|
||||
mi.commiaopai.commiaozhen.commiui.com
|
||||
mmbang.commmbang.info
|
||||
mmstat.commogucdn.commogujie.commop.com
|
||||
mscbsc.commukewang.com
mydrivers.com
myshow360.netmzstatic.comnetease.comnewbandeng.comngacn.ccntalker.comnvsheng.com
oeeee.com
|
||||
ol-img.com
|
||||
oneapm.comonlinedown.netonlinesjtu.comoschina.net
|
||||
paipai.com
|
||||
pcbeta.com
|
||||
pchome.net
|
||||
pingan.compingplusplus.com
|
||||
pps.tvpsbc.com
|
||||
pubyun.comqbox.me
|
||||
qcloud.com
qhimg.com
qhres.comqiaobutang.com
|
||||
qidian.comqihucdn.com
qingcloud.comqingsongchou.com
qiniu.comqiniucdn.comqiniudn.comqiniudns.comqiyi.comqiyipic.com
|
||||
qtmojo.com
|
||||
qq.com
|
||||
qqmail.com
qunar.comqunarzz.com
qzone.com
|
||||
renren.com
|
||||
runoob.comruanmei.comruby-china.org
|
||||
sandai.net
sanguosha.com
|
||||
sanwen.netsegmentfault.comsf-express.comsharejs.comshmetro.com
|
||||
shutcm.com
|
||||
simei8.comsina.comsinaapp.comsinaedge.comsinaimg.com
|
||||
sinajs.comszzfgjj.com
smzdm.comsohu.com
sogou.comsogoucdn.comsoso.com
sspai.comstarbaby.ccstarbaby.comstaticfile.org
stockstar.com
|
||||
suning.comszfw.orgt1y5.comtanx.com
|
||||
tao123.com
|
||||
taobao.com
taobaocdn.comtbcache.comtencent.com
|
||||
tenpay.com
tenxcloud.comtiebaimg.comtietuku.com
|
||||
tiexue.net
tmall.com
tmcdn.nettopthink.com
tudou.comtudouui.comtuicool.com
tuniu.comtutuapp.comu17.com
useso.comunionpay.comunionpaysecure.com
upyun.comupaiyun.comv2ex.com
v5875.comvamaker.com
vancl.com
vcimg.comvip.comwallstreetcn.com
wandoujia.com
|
||||
wdjimg.com
weand.com
webterren.com
weibo.comweicaifu.comweidian.comweiphone.comweiphone.netweixing.com
|
||||
weiyun.comwonnder.comworktile.com
|
||||
wooyun.orgwrating.com
|
||||
wscdns.com
wumii.comxiachufang.com
xiami.com
xiaokaxiu.com
|
||||
xiaomi.comxitu.com
xinhuanet.comxinshipu.comxiu8.com
xnpic.com
|
||||
xueqiu.com
|
||||
xunlei.comxywy.com
|
||||
yaolan.com
yccdn.com
|
||||
yeepay.com
yesky.com
yigao.com
yihaodian.comyihaodianimg.comyingjiesheng.comyinxiang.com
yinyuetai.comyixi.tv
yjbys.comyhd.com
|
||||
youboy.com
youku.comyunba.ioyundaex.com
yunshipei.com
yupoo.com
yuzua.com
|
||||
yy.com
|
||||
yytcdn.com
|
||||
zampda.netzastatic.com
|
||||
zbjimg.com
|
||||
zdfans.com
|
||||
zdmimg.com
|
||||
zhenai.com
zhanqi.tvzhaopin.com
zhihu.com
zhimg.comzhiziyun.com
zjstv.comzhubajie.com
|
||||
zrblog.net
zuche.comzuchecdn.com
|
||||
@@ -0,0 +1,13 @@
|
||||
[Unit]
|
||||
Description=V2Ray Service
|
||||
After=network.target
|
||||
Wants=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
PIDFile=/var/run/v2ray.pid
|
||||
ExecStart=/usr/bin/v2ray/v2ray -config /etc/v2ray/config.json
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,150 @@
|
||||
#!/bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: v2ray
|
||||
# Required-Start: $network $local_fs $remote_fs
|
||||
# Required-Stop: $remote_fs
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: V2Ray proxy services
|
||||
# Description: V2Ray proxy services
|
||||
### END INIT INFO
|
||||
|
||||
# Acknowledgements: Isulew Li <netcookies@gmail.com>
|
||||
|
||||
DESC=v2ray
|
||||
NAME=v2ray
|
||||
DAEMON=/usr/bin/v2ray/v2ray
|
||||
PIDFILE=/var/run/$NAME.pid
|
||||
SCRIPTNAME=/etc/init.d/$NAME
|
||||
|
||||
DAEMON_OPTS="-config /etc/v2ray/config.json"
|
||||
|
||||
# Exit if the package is not installed
|
||||
[ -x $DAEMON ] || exit 0
|
||||
|
||||
# Read configuration variable file if it is present
|
||||
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
|
||||
|
||||
# Load the VERBOSE setting and other rcS variables
|
||||
. /lib/init/vars.sh
|
||||
|
||||
# Define LSB log_* functions.
|
||||
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
|
||||
. /lib/lsb/init-functions
|
||||
|
||||
#
|
||||
# Function that starts the daemon/service
|
||||
#
|
||||
do_start()
|
||||
{
|
||||
mkdir -p /var/log/v2ray
|
||||
# Return
|
||||
# 0 if daemon has been started
|
||||
# 1 if daemon was already running
|
||||
# 2 if daemon could not be started
|
||||
# 3 if configuration file not ready for daemon
|
||||
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
|
||||
|| return 1
|
||||
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --background -m -- $DAEMON_OPTS \
|
||||
|| return 2
|
||||
# Add code here, if necessary, that waits for the process to be ready
|
||||
# to handle requests from services started subsequently which depend
|
||||
# on this one. As a last resort, sleep for some time.
|
||||
}
|
||||
|
||||
#
|
||||
# Function that stops the daemon/service
|
||||
#
|
||||
do_stop()
|
||||
{
|
||||
# Return
|
||||
# 0 if daemon has been stopped
|
||||
# 1 if daemon was already stopped
|
||||
# 2 if daemon could not be stopped
|
||||
# other if a failure occurred
|
||||
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE
|
||||
RETVAL="$?"
|
||||
[ "$RETVAL" = 2 ] && return 2
|
||||
# Wait for children to finish too if this is a daemon that forks
|
||||
# and if the daemon is only ever run from this initscript.
|
||||
# If the above conditions are not satisfied then add some other code
|
||||
# that waits for the process to drop all resources that could be
|
||||
# needed by services started subsequently. A last resort is to
|
||||
# sleep for some time.
|
||||
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
|
||||
[ "$?" = 2 ] && return 2
|
||||
# Many daemons don't delete their pidfiles when they exit.
|
||||
rm -f $PIDFILE
|
||||
return "$RETVAL"
|
||||
}
|
||||
|
||||
#
|
||||
# Function that sends a SIGHUP to the daemon/service
|
||||
#
|
||||
do_reload() {
|
||||
#
|
||||
# If the daemon can reload its configuration without
|
||||
# restarting (for example, when it is sent a SIGHUP),
|
||||
# then implement that here.
|
||||
#
|
||||
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE
|
||||
return 0
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME"
|
||||
do_start
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
stop)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
status)
|
||||
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
|
||||
;;
|
||||
reload|force-reload)
|
||||
#
|
||||
# If do_reload() is not implemented then leave this commented out
|
||||
# and leave 'force-reload' as an alias for 'restart'.
|
||||
#
|
||||
log_daemon_msg "Reloading $DESC" "$NAME"
|
||||
do_reload
|
||||
log_end_msg $?
|
||||
;;
|
||||
restart|force-reload)
|
||||
#
|
||||
# If the "reload" option is implemented then remove the
|
||||
# 'force-reload' alias
|
||||
#
|
||||
log_daemon_msg "Restarting $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1)
|
||||
do_start
|
||||
case "$?" in
|
||||
0) log_end_msg 0 ;;
|
||||
1) log_end_msg 1 ;; # Old process is still running
|
||||
*) log_end_msg 1 ;; # Failed to start
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
# Failed to stop
|
||||
log_end_msg 1
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
|
||||
echo "Usage: $SCRIPTNAME {start|stop|status|reload|restart|force-reload}" >&2
|
||||
exit 3
|
||||
;;
|
||||
esac
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"log": {
|
||||
"loglevel": "warning"
|
||||
},
|
||||
"inbound": {
|
||||
"port": 1080,
|
||||
"listen": "127.0.0.1",
|
||||
"protocol": "socks",
|
||||
"settings": {
|
||||
"auth": "noauth",
|
||||
"udp": false,
|
||||
"ip": "127.0.0.1"
|
||||
}
|
||||
},
|
||||
"outbound": {
|
||||
"protocol": "freedom",
|
||||
"settings": {},
|
||||
"tag": "direct"
|
||||
},
|
||||
"policy": {
|
||||
"levels": {
|
||||
"0": {"uplinkOnly": 0}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
{
|
||||
"log" : {
|
||||
"access": "/var/log/v2ray/access.log",
|
||||
"error": "/var/log/v2ray/error.log",
|
||||
"loglevel": "warning"
|
||||
},
|
||||
"inbound": {
|
||||
"port": 10086,
|
||||
"protocol": "vmess",
|
||||
"settings": {
|
||||
"clients": [
|
||||
{
|
||||
"id": "23ad6b10-8d1a-40f7-8ad0-e3e35cd38297",
|
||||
"level": 1,
|
||||
"alterId": 64
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"outbound": {
|
||||
"protocol": "freedom",
|
||||
"settings": {}
|
||||
},
|
||||
"outboundDetour": [
|
||||
{
|
||||
"protocol": "blackhole",
|
||||
"settings": {},
|
||||
"tag": "blocked"
|
||||
}
|
||||
],
|
||||
"routing": {
|
||||
"strategy": "rules",
|
||||
"settings": {
|
||||
"rules": [
|
||||
{
|
||||
"type": "field",
|
||||
"ip": [
|
||||
"0.0.0.0/8",
|
||||
"10.0.0.0/8",
|
||||
"100.64.0.0/10",
|
||||
"127.0.0.0/8",
|
||||
"169.254.0.0/16",
|
||||
"172.16.0.0/12",
|
||||
"192.0.0.0/24",
|
||||
"192.0.2.0/24",
|
||||
"192.168.0.0/16",
|
||||
"198.18.0.0/15",
|
||||
"198.51.100.0/24",
|
||||
"203.0.113.0/24",
|
||||
"::1/128",
|
||||
"fc00::/7",
|
||||
"fe80::/10"
|
||||
],
|
||||
"outboundTag": "blocked"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
# V2Ray 内核
|
||||
|
||||
V2Ray 内核可以单独使用,也可以配置其它程序一起使用。
|
||||
|
||||
官网:https://www.v2ray.com/
|
||||
|
||||
## 使用方式
|
||||
|
||||
### Windows 或 macOS
|
||||
|
||||
压缩包内的 config.json 是默认的配置文件,无需修改即可使用。配置文件的详细信息可以在官网找到。
|
||||
|
||||
* Windows 中的可执行文件为 v2ray.exe 和 wv2ray.exe。双击即可运行。
|
||||
* v2ray.exe 是一个命令行程序,启动后可以看到命令行界面。
|
||||
* wv2ray.exe 是一个后台程序,没有界面,会在后台自动运行。
|
||||
* macOS 中的可执行文件为 v2ray。右键单击,然后选择使用 Terminal 打开即可。
|
||||
|
||||
### Linux
|
||||
|
||||
压缩包中包含多个配置文件,按需使用。
|
||||
|
||||
可执行程序为 v2ray,启动命令:
|
||||
|
||||
```bash
|
||||
v2ray --config=<full path>
|
||||
```
|
||||
|
||||
## 验证文件
|
||||
|
||||
压缩包中的 .sig 文件为 GPG 签名文件,用来验证对应程序文件的真实性。签名公钥可以在下面的链接找到:
|
||||
|
||||
https://github.com/v2ray/v2ray-core/blob/master/release/verify/official_release.asc
|
||||
|
||||
## 问题反馈
|
||||
|
||||
* Github: https://github.com/v2ray/v2ray-core
|
||||
* Telegram: https://t.me/projectv2ray
|
||||
Executable
+46
@@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
|
||||
VER=$1
|
||||
PROJECT=$2
|
||||
|
||||
DOTCNT=$(echo $VER | grep -o "\." | wc -l)
|
||||
if [ "$DOTCNT" -gt 1 ]; then
|
||||
PRE="true"
|
||||
else
|
||||
PRE="false"
|
||||
fi
|
||||
|
||||
if [ -z "$PROJECT" ]; then
|
||||
echo "Project not specified. Exiting..."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo Creating a new release: $VER
|
||||
|
||||
IFS="." read -a PARTS <<< "$VER"
|
||||
MAJOR=${PARTS[0]}
|
||||
MINOR=${PARTS[1]}
|
||||
MINOR=$((MINOR+1))
|
||||
VERN=${MAJOR}.${MINOR}
|
||||
|
||||
pushd $GOPATH/src/v2ray.com/core
|
||||
echo "Adding a new tag: " "v$VER"
|
||||
git tag -s -a "v$VER" -m "Version ${VER}"
|
||||
sed -i '' "s/\(version *= *\"\).*\(\"\)/\1$VERN\2/g" core.go
|
||||
echo "Commiting core.go (may not necessary)"
|
||||
git commit core.go -S -m "Update version"
|
||||
echo "Pushing changes"
|
||||
git push --follow-tags
|
||||
popd
|
||||
|
||||
echo "Launching build machine."
|
||||
DIR="$(dirname "$0")"
|
||||
RAND="$(openssl rand -hex 5)"
|
||||
gcloud compute instances create "v2raycore-${RAND}" \
|
||||
--machine-type=n1-highcpu-2 \
|
||||
--metadata=release_tag=v${VER},prerelease=${PRE} \
|
||||
--metadata-from-file=startup-script=${DIR}/release-ci.sh \
|
||||
--zone=us-central1-c \
|
||||
--project ${PROJECT} \
|
||||
--scopes "https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/devstorage.read_write" \
|
||||
|
||||
Executable
+107
@@ -0,0 +1,107 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -x
|
||||
|
||||
apt-get update
|
||||
apt-get -y install jq git file p7zip-full
|
||||
|
||||
function getattr() {
|
||||
curl -s -H "Metadata-Flavor: Google" http://metadata.google.internal/computeMetadata/v1/$2/attributes/$1
|
||||
}
|
||||
|
||||
GITHUB_TOKEN=$(getattr "github_token" "project")
|
||||
RELEASE_TAG=$(getattr "release_tag" "instance")
|
||||
PRERELEASE=$(getattr "prerelease" "instance")
|
||||
DOCKER_HUB_KEY=$(getattr "docker_hub_key" "project")
|
||||
SIGN_KEY_PATH=$(getattr "sign_key_path" "project")
|
||||
SIGN_KEY_PASS=$(getattr "sign_key_pass" "project")
|
||||
VUSER=$(getattr "b_user" "project")
|
||||
|
||||
mkdir -p /v2ray/build
|
||||
|
||||
gsutil cp ${SIGN_KEY_PATH} /v2ray/build/sign_key.asc
|
||||
echo ${SIGN_KEY_PASS} | gpg --passphrase-fd 0 --batch --import /v2ray/build/sign_key.asc
|
||||
|
||||
curl -L -o /v2ray/build/releases https://api.github.com/repos/v2ray/v2ray-core/releases
|
||||
|
||||
GO_INSTALL=golang.tar.gz
|
||||
curl -L -o ${GO_INSTALL} https://storage.googleapis.com/golang/go1.9.2.linux-amd64.tar.gz
|
||||
tar -C /usr/local -xzf ${GO_INSTALL}
|
||||
export PATH=$PATH:/usr/local/go/bin
|
||||
|
||||
mkdir -p /v2ray/src
|
||||
export GOPATH=/v2ray
|
||||
|
||||
go get -u v2ray.com/core/...
|
||||
go get -u v2ray.com/ext/...
|
||||
|
||||
pushd $GOPATH/src/v2ray.com/core/
|
||||
git checkout tags/${RELEASE_TAG}
|
||||
popd
|
||||
|
||||
go install v2ray.com/ext/tools/build/vbuild
|
||||
|
||||
export TRAVIS_TAG=${RELEASE_TAG}
|
||||
export GPG_SIGN_PASS=${SIGN_KEY_PASS}
|
||||
export V_USER=${VUSER}
|
||||
|
||||
$GOPATH/bin/vbuild --os=windows --arch=x86 --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=windows --arch=x64 --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=macos --arch=x64 --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=linux --arch=x86 --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=linux --arch=x64 --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=linux --arch=arm --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=linux --arch=arm64 --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=linux --arch=mips64 --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=linux --arch=mips64le --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=linux --arch=mips --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=linux --arch=mipsle --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=linux --arch=s390x --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=freebsd --arch=x86 --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=freebsd --arch=amd64 --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=openbsd --arch=x86 --zip --sign #--encrypt
|
||||
$GOPATH/bin/vbuild --os=openbsd --arch=amd64 --zip --sign #--encrypt
|
||||
|
||||
#RELBODY=$(cat $GOPATH/bin/metadata.txt | jq -R -s -c .)
|
||||
JSON_DATA=$(echo "{}" | jq -c ".tag_name=\"${RELEASE_TAG}\"")
|
||||
JSON_DATA=$(echo ${JSON_DATA} | jq -c ".prerelease=${PRERELEASE}")
|
||||
#JSON_DATA=$(echo ${JSON_DATA} | jq -c ".body=${RELBODY}")
|
||||
RELEASE_ID=$(curl --data "${JSON_DATA}" -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/v2ray/v2ray-core/releases | jq ".id")
|
||||
|
||||
function upload() {
|
||||
FILE=$1
|
||||
CTYPE=$(file -b --mime-type $FILE)
|
||||
curl -H "Authorization: token ${GITHUB_TOKEN}" -H "Content-Type: ${CTYPE}" --data-binary @$FILE "https://uploads.github.com/repos/v2ray/v2ray-core/releases/${RELEASE_ID}/assets?name=$(basename $FILE)"
|
||||
}
|
||||
|
||||
upload $GOPATH/bin/v2ray-macos.zip
|
||||
upload $GOPATH/bin/v2ray-windows-64.zip
|
||||
upload $GOPATH/bin/v2ray-windows-32.zip
|
||||
upload $GOPATH/bin/v2ray-linux-64.zip
|
||||
upload $GOPATH/bin/v2ray-linux-32.zip
|
||||
upload $GOPATH/bin/v2ray-linux-arm.zip
|
||||
upload $GOPATH/bin/v2ray-linux-arm64.zip
|
||||
upload $GOPATH/bin/v2ray-linux-mips64.zip
|
||||
upload $GOPATH/bin/v2ray-linux-mips64le.zip
|
||||
upload $GOPATH/bin/v2ray-linux-mips.zip
|
||||
upload $GOPATH/bin/v2ray-linux-mipsle.zip
|
||||
upload $GOPATH/bin/v2ray-linux-s390x.zip
|
||||
upload $GOPATH/bin/v2ray-freebsd-64.zip
|
||||
upload $GOPATH/bin/v2ray-freebsd-32.zip
|
||||
upload $GOPATH/bin/v2ray-openbsd-64.zip
|
||||
upload $GOPATH/bin/v2ray-openbsd-32.zip
|
||||
upload $GOPATH/bin/metadata.txt
|
||||
|
||||
if [[ "${PRERELEASE}" == "false" ]]; then
|
||||
|
||||
gsutil cp $GOPATH/bin/v2ray-${RELEASE_TAG}-linux-64/v2ray gs://v2ray-docker/
|
||||
gsutil cp $GOPATH/bin/v2ray-${RELEASE_TAG}-linux-64/v2ctl gs://v2ray-docker/
|
||||
gsutil cp $GOPATH/bin/v2ray-${RELEASE_TAG}-linux-64/geoip.dat gs://v2ray-docker/
|
||||
gsutil cp $GOPATH/bin/v2ray-${RELEASE_TAG}-linux-64/geosite.dat gs://v2ray-docker/
|
||||
|
||||
DOCKER_HUB_API=https://registry.hub.docker.com/u/v2ray/official/trigger/${DOCKER_HUB_KEY}/
|
||||
curl -H "Content-Type: application/json" --data '{"build": true}' -X POST "${DOCKER_HUB_API}"
|
||||
|
||||
fi
|
||||
|
||||
shutdown -h now
|
||||
@@ -0,0 +1,52 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Comment: GPGTools - https://gpgtools.org
|
||||
|
||||
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
|
||||
80yAOiqyRyAtruVaY72n
|
||||
=CVru
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
Reference in New Issue
Block a user