Jenkins之Windows中构建Core项目

一、配置项目
1、新建项

2、添加任务名

3、选择自由风格
3.1、添加任务基本信息

3.2、源码管理
如果明白对应源码管理的用途,可以选择点击,截图中的帮助图标,有对应层级的基本信息描述。

选择 Git

3.3、添加仓库地址
本地创建一个Asp.net Core WebApi
项目,并添加到源码代码管理中,并推送到远程仓库中,获取git
地址https://gitee.com/guanguanchangyu/EXEGGCY.git
,添加到项目中,出现如下提示:
Failed to connect to repository : Command "git.exe ls-remote -h -- https://gitee.com/guanguanchangyu/EXEGGCY.git HEAD" returned status code 128:
stdout:
stderr: Logon failed, use ctrl+c to cancel basic credential prompt.
remote: [31mUsername for 'https: Incorrect username or password (access token)[0m
fatal: Authentication failed for 'https://gitee.com/guanguanchangyu/EXEGGCY.git/'
3.4、添加仓库凭证
方式一、用户名和用户密码

具体填写内容

选择凭证,如果账户的用户名和密码输入正确,源码管理仓库将不再提示上述错误信息

方式二、使用ssh key
本地通过ssh-keyagen
生成证书公钥
和私钥
后,将本地生成的公钥,添加到线上的个人公钥
或仓库公钥
中,细节操作自行搜索,添加成功后,本地在对应的项目中配置的源码管理
部分进行操作处理,选择凭证添加

用户名和标识按实际需要进行填写,不用非得和git的账户一致

add
添加的是本地生成的私钥
内容
如果构建凭证时设置了密码,则需要在Passphrase
输入框中添加对应的密码,保存成功之后,就可以进行选择
注意:对于gitee
来说,目前默认不支持(2021-8-18
)建立的私有仓库由jenkins
使用ssh key
方式进行远程访问
个人私有创建的gitea
可以正常使用,特此提示,避免读者躺坑。
3.5、环境构建
当前项目为Core
项目并未涉及。
3.6、构建

输入如下指令:
dotnet restore
dotnet build
如下图:

3.7、测试指令
保存配置,跳转到当前任务首页,选择Build Now
进行指令测试

查看构建历史

点击最新记录,查看详情

查看控制台输出,可以看到当前输出页面和实际日常开发过程中,指定dotnet
指令进行项目的restore
和build
基本保持一致

那是否也存在对应的项目工作目录?
是的,该工作目录,在任务信息首页中,叫做工作空间
,也就是上图控制台输出
的执行路径,在项目首页中可以进行查看

C:\Windows\system32\config\systemprofile\AppData\Local\Jenkins\.jenkins\workspace\ynkenginemap
就是将远程仓库克隆下来的本地目录,打开对应目录如下:

运行过程中,执行的指令都在当前目录下执行,那发布项目也同样如此。
执行指令dotnet publish
,参考:指令信息,此处直接切换目录到JenkinsDemo
下,执行发布指令,发布文件默认输出到bin\Debug\netcoreapp3.1\publish

保存后,查看运行测试效果:

运行成功后,查看工作空间
,以下表示项目已经正常生成。

二、参考链接
[1]官方文档:
https://www.jenkins.io/zh/doc/
[2] 文件目录拷贝:
https://blog.csdn.net/ak47007tiger/article/details/95749419
[3] 远程OpenSSH
配置:
https://blog.csdn.net/qq_28806349/article/details/120624802
https://blog.csdn.net/qq_28806349/article/details/120626333

