salt远程实现go编译重启
使用salt实现jenkins发版时,远程对go项目编译重启
1、go 版本1.12 使用go mod
2、设置go镜像
GOPROXY="https://goproxy.io"
3、slat 脚本
sudo salt serverip cmd.run "/bin/sh /home/script/build.sh"
serverip:你的服务器
4、build.sh
#!/bin/bash #进入项目目录
cd /home/www/projectname
#导出环境变量
source /etc/profile
#杀掉进程
kill - `ps -ef | grep courseware | grep -v grep | awk '{print $2}'`
#编译
go build
#使用nohup启动
nohup ./courseware --release=true >/dev/null >& &
#打印进程信息
ps -ef | grep courseware | grep -v grep
#最后必须退出
exit
解释:
1、笔者的可执行文件叫 courseware
2、遇到go 命令找不到,是因为远程机无法获取go的环境变量,所以,执行一下 source /etc/profile
3、执行完脚本最后要 exit,因为使用nohup并不会自己退出
4、如果GOPATH、GOCACHE 就改下目录
笔者的go环境变量
export GOROOT=/usr/local/go
export GOPATH=/usr/local/gopath
export PATH=$PATH:$GOROOT/bin
export GOPROXY="https://goproxy.io"
export GOCACHE="/home/GOCACHE/go-build"
salt远程实现go编译重启的更多相关文章
- 用命令实现Win7远程桌面关机和重启
关机 shutdown -s -t 0 重启 shutdown -r -t 0 打开运行框(Win+R键),输入上述命令即可,后面的数字表示关机/重启延迟的时间 at 12:00 shutdown - ...
- 实现Win7远程桌面关机和重启
通过远程桌面控制Win7系统时,菜单中没有关机和重启按钮, 1.方法1 关机 shutdown -s -t 0重启 shutdown -r -t 0 可以先打开运行框(Win+R键),输入上述命令即可 ...
- 基于v4l2 ffmpeg x264的视频远程监控(附上编译好的库文件)
说明:主要是基于ghostyu网友整理的< arm mini2440 基于v4l2 ffmpeg x264的视频远程监控>.自己做了一遍,遇到不少问题,就整理记录下来. 1.平台 硬件:a ...
- 『学了就忘』Linux基础 — 17、远程服务器关机及重启时的注意事项
目录 1.为什么远程服务器不能关机 2.远程服务器重启时需要注意两点 3.不要在服务器访问高峰运行高负载命令 4.远程配置防火墙时不要把自己踢出服务器 5.指定合理的密码规范并定期更新 6.合理分配权 ...
- 不通用版(从SVN取版本,通过MAVEN生成JAVA包,通过SALTSTACK传送到远程服务器并自动重启TOMCAT服务)PYTHON代码
从昨晚写到今天啊, 第一版测试成功了. PHP和JAVA的更新相对来说,PHP的自动化更新是简单多啦~~ 当然,这只是运维工作当中的一环~~ #!/usr/bin/env python # -*- c ...
- Spring Boot 配置 IDEA&DevTools 自编译重启
MAVEN 配置 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht ...
- 远程调用与编译DS作业
1.编译服务器上的ds作业 dscc /d 服务器地址:端口 /u 用户名 /p 密码 工程名称 /J 作业名称 解释: 作业名称:直接写作业名称即可,不用.pjb 2.执行服务器上的ds作业 dsj ...
- Shell 脚本 —— java 代码远程调用shell脚本重启 tomcat
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 1.创建maven 工程 maven 依赖: <dependency> <grou ...
- 编译+远程调试spark
一 编译 以spark2.4 hadoop2.8.4为例 1,spark 项目根pom文件修改 pom文件新增 <profile> <id>hadoop-2.8</id ...
随机推荐
- 项目Beta冲刺(团队)——05.23(1/7)
项目Beta冲刺(团队)--05.23(1/7) 格式描述 课程名称:软件工程1916|W(福州大学) 作业要求:项目Beta冲刺(团队) 团队名称:为了交项目干杯 作业目标:记录Beta敏捷冲刺第1 ...
- Controller的激活(2)
通过VS 的Controller 创建想到创建的Controller 类型 实际上继承了抽象类System.Web.Mvc.Controller,他是ControllerBase的子类,抽象类Syst ...
- HDU4624 Endless Spin 和 HAOI2015 按位或
Endless Spin 给你一段长度为[1..n]的白色区间,每次随机的取一个子区间将这个区间涂黑,问整个区间被涂黑时需要的期望次数. n<=50 题解 显然是min-max容斥,但是n的范围 ...
- 数据分析 - Matplotlib
简介 Matplotlib是一个强大的Python绘图和数据可视化的工具包.数据可视化也是我们数据分析的最重要的工作之一,可以帮助我们完成很多操作,例如:找出异常值.必要的一些数据转换等.完成数据分析 ...
- Nuxt项目支持import写法的最新解决方案
最近在看Nuxt开发vue项目的视频,视频中讲到Nuxt项目不支持es6的import写法.并提供了解决方案: 1.在package.json中添加我标红的部分: "scripts" ...
- Dubbo架构及原理
1.Dubbo:Dubbo是一个分布式服务框架,SOA治理方案. 主要功能有:高性能的NIO通讯以及协议集成.服务动态寻址与路由.软负载均衡与容错.依赖分析与降级 主要特点: 连通性:provider ...
- 洛谷P1107 [BJWC2008]雷涛的小猫 题解
题面 以下是luogu给的标签 但字符串是什么鬼.... 玄学... 哦吼~ #include<cstdio> #include<iostream> using namespa ...
- Java接口、lambda的学习
接口的实现 : 使用interface定义:形式如下 interface Printable{ final int MAX = 100; void add(); float sum(float x ...
- word2vector的tensorflow代码实现
import collections import math import os import random import zipfile import numpy as np import urll ...
- js数组reduce()方法的使用和一些应用场景
reduce()的使用 reduce()方法为归并类方法,最常见的应用场景就是,计算数组中每一项的总和. reduce()方法会遍历数组的每一项,它接收两个参数: 第一个参数是:每次遍历都会调用的函数 ...