Python

handle_error() takes 4 positional arguments but 6 were given

自己的工程代码基于flask写的,最近升级了webargs到5.1.3版本之后就会有一个异常错误捕获type error 提示handle_error() takes 4 positional arguments but 6 were given错误 这个错误的意思是,这个handle_error函数需要四个参数,但是给了六个 后边查到webargs的官方文档,我们这里改造一下老版本的handle error函数就可以啦 老版本的handle error 函数,确实是只有四个参数。但是我们升级了webargs,然后我们自己的CustomFlaskParser是继承自FlaskParser这个类的,这个类的handle_error函数是有六个参数的,所以我们重载之后的函数也需要这么多个参数。 FlaskParser类的handle_error函数

  • 壳壳
    壳壳
2 min read
Linux

简单使用Certbot申请和使用Let's Encrypt的SSL证书

certbot是什么 我们申请和使用Let's Encrypt的免费HTTPS证书, 就需要一个证书申请和管理的工具, 然后certbot是官方推荐的申请工具, 我们使用这个工具申请和管理我们的证书 certbot支持大部分的linux发行版, 使用简单, 我们直接下载和安装他们: 我这里的系统是ubuntu, 如果是centos或者其他发行版安装方式应该都是差不多的, 我使用官方包直接快速安装 关于HTTPS是什么可以看这里, Let's Encrypt是什么看这里. sudo apt update && sudo apt install certbot 安装成功之后需要使用sudo命令运行, 我们运行看看: sudo certbot -h 输入密码之后, 可以看到说明 获取证书 安装好管理工具之后,

  • 壳壳
    壳壳
4 min read
Docker

使用docker安装Jenkins并且配置一个agent(二)

Jenkins界面 首先我们进入Jenkins的管理界面,首先使用docker启动上一节在docker安装好的Jenkins。 $ docker container start jenkins 启动好了之后打开浏览器输入http://localhost:8000 进入Jenkins的管理界面。 然后点击系统管理,节点管理。 然后我们创建一个新的agent。 agent创建 我们点击左边的new node创建一个新的agent。 我们保持默认值不变,直接保存。 然后我们在节点中心里边点击agent的这个节点,看到如下界面。 如果你没有看到,可以在这个agent的configure里边的 Launch method 设置成通过Java web启动代理就可以了。 然后我们看到里边会有一行命令,来说明怎么执行Jenkins agent ,我们只需要他的secret和host就好了。 启动agent节点 使用docker安装Jenkins

  • 壳壳
    壳壳
2 min read
Python

简单配置你的CLI/终端通过代理

有时候开发任务需要代理的时候, 可以这么配置你的bashrc或者zshrc文件, 一般直接导出你的本地工具开放的端口. 我已经假设你已经配置好了一些科学上网工具, 已经有本地客户端, 并监听了诸如1080或者8080的http或者socks5端口. 完了之后需要执行$ source bashrc/zshrc来利用source命令重新执行你修改后的rc文件. 接着可以执行$ curl ip.gs来检查你的CLI/终端工具是否已经通过代理. 最后就可以愉快地执行brew, curl, npm, pip, go get等任务啦😂

  • 壳壳
    壳壳
1 min read
Git

merge request的基本流程

准备工作 一开始需要你克隆仓库的代码下来: git clone https://github.com/xxxx/helloworld.git 然后创建一条你的分支, 和master分支有别, 然后checkout到你刚刚创建的分支中去, 命令行类似: cd helloworld git checkout -b fun 这样相当于创建一个fun的分支并且检出到fun分支下, 检出之后你就不是在master分支下了 编码部分 到了新分支之后, 编写你的代码, 然后提交, 使用命令 git add . 添加你的更改过的文件, 然后再输入 git commit

  • 壳壳
    壳壳
2 min read