Vue Test Utils组件测试
环境准备
Jest安装
npm install --save-dev jest@26.6.3
安装完成后将Jest单元测试环境配置好
Jest单元测试
vue-jest安装
npm install --save-dev vue-jest@4.0.1
Vue Test Utils安装
npm install --save-dev @vue/test-utils@1.3.3
编写组件测试
准备
渲染组件
mount(MainPage)
shallowMount(MainPage)
访问storage
global.sessionStorage.setItem('userId', '1')
mock模块
jest.mock('axios')
...
Jenkins流水线Jenkinsfile编写
前言
Jenkinsfile文件描述Jenkins项目构建的步骤,以达到将项目构建的配置描述转移到文件中的目的。
Jenkinsfile例子
pipeline {
agent any
// 指定使用的JDK和Maven,关联的是全局工具配置里面的名称
tools {
jdk 'JDK'
maven 'Maven'
}
// 指定构建使用的参数
parameters {
gitParameter branch: '',
branchFilter: '.*',
defaultValue: 'origin/t...
Jest单元测试
环境准备
安装Jest
npm install --save-dev jest@26.6.3
安装vue-jest
如需要支持vue文件,则安装
npm install --save-dev vue-jest@4.0.1
配置Jest代码编译
package.json加入以下内容
"jest": {
"moduleFileExtensions": [
"js",
"json",
"vue"
],
"transform": {
"^.+\\.js$": "babel-jest",
"^.+\\.vue$": "vue-jest"
},
"moduleNameMapper...
Spring Security OAuth第三方登录实例
本文例子基于前后端分离项目
登录功能实现
登录时序图
后端关键代码
基于Spring Boot实现
pom.xml引入Sprint Boot OAuth Client
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</dependency>
application.yml
spring:
security:
oauth2:
client:
registra...
GitLab提交代码触发Jenkins构建
安装Jenkins插件
安装GitLab插件
配置项目构建触发器
GitLab出站请求配置
访问本地网络的Jenkins时需要配置
项目Webhook配置
非HTTPS取消启用SSL验证
Git同时推送GitHub和GitLab
实现方式
将GitHub和GitLab的远端地址放在同一个remote中
仓库准备
准备一个空的GitHub仓库和一个空的GitLab
本地先克隆GitHub仓库
远端仓库设置多个URL
加上GitLab远端仓库的URL
git remote set-url --add origin ssh://git@gitlab.oc.com:2222/oliver/languagetrainer.git
查看远端仓库所有URL
git remote get-url --all origin
查看结果
git@github.com:Still1/LanguageTrainer.git
ssh://git@gitlab.oc.com:2222/oliver/language...
GitLab在Docker下安装
配置临时环境变量
export GITLAB_HOME=/srv/gitlab
启动GitLab容器
docker run --detach \
--hostname gitlab.oliverclio.com \
--publish 443:443 --publish 80:80 --publish 2222:22 \
--name gitlab \
--restart always \
--volume $GITLAB_HOME/config:/etc/gitlab:Z \
--volume $GITLAB_HOME/logs:/var/log/gitlab:Z \
--volume $GITLAB_HOME/data:/var/opt/gitl...
Docker网络
Docker网络模式
bridge
桥接模式,宿主机与Docker容器通过Docker0桥接,宿主机为默认网关,每一个Docker容器有独立的IP。宿主机的veth与容器的eth0一一对应
host
Docker容器没有独立的IP,与宿主机共享同一网络,使用同一个IP。此模式下容器与宿主机的端口映射不生效
none
Docker容器只有lo,没有其它网络配置。
container
Docker容器没有独立的IP,与另一个Docker容器共享同一网络,使用同一个IP
Docker自定义网络
通过自定义网络,容器之间实现服务名称访问
docker network create tomcat
docker run -d -p 8081:8080 --network to...
DockerFile指南
关键字
FROM 指定基础镜像
RUN 构建镜像时执行
RUN ["./test.php", "dev", "offline"]
RUN ./test.php dev offline
EXPOSE 暴露端口
WORKDIR 指定初始工作目录
ENV 设置环境变量
ENV CATALINA_HOME /usr/local/tomcat
ADD 将宿主机目录下的文件复制到镜像中并自动处理URL和解压
COPY 复制宿主机的文件和目录,类似ADD
VOLUME 指定容器卷
CMD 容器启动后默认运行的命令,可以被docker run命令的参数覆盖
CMD ["catalina.sh", "run"]
ENTRYPOINT 容器启动后默认运行的命令,优先级比CM...
Jenkins自动化部署环境搭建
Docker安装并启动Jenkins
docker run \
--name jenkins \
-u root \
-d \
-p 80:8080 \
-p 50000:50000 \
-v jenkins-data:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
--restart always \
jenkins/jenkins
访问Jenkins
按步骤做初始化操作
初始密码挂载路径
/var/lib/docker/volumes/jenkins-data/_data/secrets/initialAdminPassword
安装插件
第...
332 post articles, 34 pages.