AWX+gitlab
AWX+gitlab
我们可以将playbook上传到gitlab,然后awx去执行任务的时候,任务的playbook从gitlab去下载
1. Awx配置
点击左侧访问下拉菜单,然后添加机构
1.1 添加机构
1.2 添加团队
1.3 添加主机
将需要被管理的节点添加进来
变量这个地方可以写内部变量,不知道什么是内部变量可以去看看ansible变量部分
也可以不直接在这里指定变量,那么就需要在凭证里面添加一个机器凭证,里面会让你填入用户名/密码 或者密钥的
1.4 测试主机连通性
依次点击 清单--->Demo Inventory ---> 主机----> 勾选主机---->执行命令
执行一个简单的whoami命令
输出没问题
2. 对接gitlab
2.1 添加凭证
这里的用户名和密码不能乱填,要填已经在gitlab上注册的用户或者马上要到gitlab上注册的用户,这里是我的gitlab用户截图
2.2 添加项目
在awx上创建新项目
确保gitlab上有一个群组,等会是需要输入url的
这个url的来源这样的
- 1.来到gitlab的界面
- 2.找到新建的群组/已存在的群组
最后的页面应该成这样
2.3 上传playbook
来到任意节点,只要能连接上git就行
2.3.1 克隆仓库
# 这里的gitlab.hcie.com需要自己在hosts里面做解析
[root@master gitlab]# git clone http://gitlab.hcie.com/devops/myroles.git
Cloning into 'myroles'...
Username for 'http://gitlab.hcie.com': test
Password for 'http://test@gitlab.hcie.com':
remote: Enumerating objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 3 (from 1)
Receiving objects: 100% (3/3), done.
这里需要输入用户名和密码,用户名就用刚刚在awx里面添加凭据的那个用户
2.3.2 创建分支
[root@master myroles]# git checkout -b dev
Switched to a new branch 'dev'
[root@master myroles]# git push -u origin dev
然后输入用户名和密码
2.3.3 编写playbook并上传
[root@master myroles]# cat test.yaml
- name: test playbook
hosts: all
tasks:
- name: debug
debug:
msg: "hello world"
[root@master myroles]# git add .
[root@master myroles]# git commit -m "commit test playbook"
[root@master myroles]# git push
输入用户名和密码开始推送
上传完之后会变成这个样子
2.3.4 上传ansible.cfg(可选)
如果没有特殊的配置的话可以不做这一步
如果是使用的角色来执行任务的话ansible.cfg里面还要定义role的路径
修改里面的一项
[root@master myroles]# vim ansible.cfg
host_key_checking = False
本身是有这一项的,把注释取消
2.3.5 创建作业模板
这里的playbook里面是没有什么东西的,你可以自己把剧本的名字写进去,然后点击保存
这个凭证没有的话你可以创建一个ssh凭证,不创建的话可以在变量里面把用户名和密码都定义进去
然后点击保存
2.4 测试
直接点击启动,他就会开始执行剧本了
等他执行
AWX+gitlab的更多相关文章
- 创建SSH Key连接github或gitlab
mac下用SoureceTree下载github或gitlab上的项目时,需要进行ssh key验证.每次重装系统啥的都要重新弄,我在csdn上看到一篇不错的文章.转载一下,以后自己找起来也方便. 地 ...
- 【补充】Gitlab 部署 CI 持续集成
上一篇:<劈荆斩棘:Gitlab 部署 CI 持续集成> 上一篇所配置的.gitlab-ci.yml: stages: - build - test before_script: - ec ...
- 劈荆斩棘:Gitlab 部署 CI 持续集成
阅读目录: install configue gitlab-ci-multi-runner restore nuget packages bulid .sln run unit tests confi ...
- svn迁移gitlab,构建前端打包发布流程
前端资源迁移 目前公司的前端资源托管在svn服务器上,由于团队的逐渐扩大,svn的分支管控越来越不灵活,而且对于以后前端流程一体化的处理支持不是很好,因此决定在版本控制上转向git.git的好 ...
- GitLab CI持续集成配置方案(补)
上篇文章介绍了GitLab CI的持续集成配置方法,本篇文章将主要介绍NUnit的持续集成和遇到的一些坑 1.NUnit单元测试持续集成 下载NUnit.3.4.1.msi,https://githu ...
- GitLab CI持续集成配置方案
目录 1. 持续集成介绍 1.1 概念 1.2 持续集成的好处 2. GitLab持续集成(CI) 2.1 简介 2.2 GitLab简单原理图 2.3 GitLab持续集成所需环境 2.4 需要了解 ...
- CentOS安装gitlab,gerrit,jenkins并配置ci流程
CentOS安装gitlab,gerrit,jenkins并配置ci流程 By Wenbin juandx@163.com 2016/4/9 这是我参考了网上很多的文档,配置了这三个软件在一个机器上, ...
- gitlab基本维护和使用
基本介绍 GitLab是一个自托管的Git项目仓库,可以自己搭建个人代码管理的仓库,功能与github类似. 安装 下载 gitlab下载地址: https://about.gitlab.com/do ...
- gitlab使用个人版v16.11
title: gitlab使用个人版v16.11 date: 2016-11-13 20:53:00 tags: [gitlab] --- 1.安装gitbash 附上地址链接:git 2.配置git ...
- Gitlab完美安装【CentOS6.5安装gitlab-6.9.2】
摘要: 拆腾了几天,终于在今天找到了快速安装Gitlab的方法.CentOS6.5安装gitlab-6.9.2 参考网址:https://gitlab.com/gitlab-org/omnibus-g ...
随机推荐
- 使用 Docker 自建一款怀旧游戏之 - 超级马里奥
1)超级马里奥 简介 < 超级马里奥 >(Super Mario)是任天堂公司创造的一款经典游戏系列,是世界上最知名.最成功的游戏之一.这个系列由日本设计师宫本茂于 1985 年创造,最初 ...
- 关于Python中的None
关于Python中的None 注意到None这个类型是在做一道Python题目时,要求说如果传进函数的字符串是"None"则返回False,糟糕的是我并不知道如何判断是否是&quo ...
- 【Vue】vuex存储和本地存储(localstorage、sessionstorage)的区别
sessionStorage sessionStorage 方法针对一个 session 进行数据存储.当用户关闭浏览器窗口后,数据会被删除. 用法: 储存: 1. 点(.)运算符 sessionSt ...
- 启动docker某个image(镜像)的已经关闭的container(容器)
1.创建一个后台运行 ubuntu 容器 root@haima-PC:/home/haima/Desktop# docker run -d --name ubuntu-lnmp ubuntu bf24 ...
- Typora最后的免费版本0.11.18
Typora最后的免费版本为0.11.18. 之后的1.x开始收费. 免费版本0.11.18的百度网盘链接如下(永久链接): 链接:https://pan.baidu.com/s/1XizAD0SFp ...
- C语言简答题
C语言的历史: c语言是在20世纪70年代初美国贝尔实验室开发的一种高级编程语言,由B语言发展来,最初是为了Unix操作系统开发的.在80年代中期,由ISO和ANSI C对它进行了一系列的标准化, 9 ...
- Splashtop远程桌面再次增强:支持4K视频流
远程桌面工具,主流的有10款总有,国内用的比较多的有teamviewer.Splashtop.向日葵等.几款软件各有千秋,其中Splashtop最大的特性就是快速.流畅.产品无敌,运营佛系,哈哈.下面 ...
- [kernel] 带着问题看源码 —— 进程 ID 是如何分配的
前言 在<[apue] 进程控制那些事儿>一文中,曾提到进程 ID 并不是唯一的,在整个系统运行期间一个进程 ID 可能会出现好多次. > ./pid fork and exec c ...
- CICD详解之gitlab,Jenkins
持续集成概念 持续集成Continuous Integration 持续交付Continuous Delivery 持续部署Continuous Deployment 什么是持续集成: 持续集成是指开 ...
- ubuntu禁止指定的软件升级
禁止软件升级 sudo echo 软件包名 hold | sudo dpkg --set-selections 取消软件禁止升级的限制 sudo echo 软件包名 install | sudo dp ...