initial commit
This commit is contained in:
commit
d691f0d1a5
10 changed files with 177 additions and 0 deletions
60
.kitchen.yml
Normal file
60
.kitchen.yml
Normal file
|
@ -0,0 +1,60 @@
|
|||
---
|
||||
driver:
|
||||
name: docker
|
||||
use_sudo: false
|
||||
privileged: true
|
||||
require_chef_omnibus: false
|
||||
|
||||
verifier:
|
||||
name: inspec
|
||||
inspec_tests:
|
||||
- test/integration/cli53/inspec
|
||||
|
||||
platforms:
|
||||
- name: ubuntu-14.04
|
||||
driver_config:
|
||||
disable_upstart: false
|
||||
image: ubuntu-upstart:14.04
|
||||
run_command: /sbin/init
|
||||
|
||||
- name: debian-9.4
|
||||
driver_config:
|
||||
run_command: /bin/systemd
|
||||
|
||||
- name: ubuntu-16.04
|
||||
driver_config:
|
||||
run_command: /sbin/init
|
||||
|
||||
- name: centos-7
|
||||
driver_config:
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
|
||||
provisioner:
|
||||
name: salt_solo
|
||||
#log_level: quiet
|
||||
require_chef: false
|
||||
formula: cli53
|
||||
state_top:
|
||||
base:
|
||||
'*':
|
||||
- cli53
|
||||
pillars-from-files:
|
||||
base.sls: pillar.example
|
||||
pillars:
|
||||
top.sls:
|
||||
base:
|
||||
'*':
|
||||
- base
|
||||
- cli53
|
||||
cli53.sls:
|
||||
cli53:
|
||||
register: []
|
||||
scripts: []
|
||||
|
||||
suites:
|
||||
- name: cli53-client
|
||||
provisioner:
|
||||
pillars:
|
||||
cli53.sls:
|
||||
cli53:
|
||||
version: 0.8.13
|
16
.travis.yml
Normal file
16
.travis.yml
Normal file
|
@ -0,0 +1,16 @@
|
|||
sudo: required
|
||||
language: python
|
||||
services:
|
||||
- docker
|
||||
|
||||
before_install:
|
||||
- bundle install
|
||||
|
||||
env:
|
||||
matrix:
|
||||
- INSTANCE: cli53-ubuntu-1404
|
||||
- INSTANCE: cli53-ubuntu-1604
|
||||
- INSTANCE: cli53-centos-7
|
||||
|
||||
script:
|
||||
- bundle exec kitchen verify ${INSTANCE}
|
6
Gemfile
Normal file
6
Gemfile
Normal file
|
@ -0,0 +1,6 @@
|
|||
source "https://rubygems.org"
|
||||
|
||||
gem "test-kitchen"
|
||||
gem "kitchen-docker"
|
||||
gem "kitchen-salt"
|
||||
gem "kitchen-inspec"
|
13
LICENSE
Normal file
13
LICENSE
Normal file
|
@ -0,0 +1,13 @@
|
|||
Copyright (c) 2013-2015 Salt Stack Formulas
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
21
README.rst
Normal file
21
README.rst
Normal file
|
@ -0,0 +1,21 @@
|
|||
======
|
||||
cli53
|
||||
======
|
||||
|
||||
.. note::
|
||||
|
||||
See the full `Salt Formulas installation and usage instructions
|
||||
<http://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html>`_.
|
||||
|
||||
Available states
|
||||
================
|
||||
|
||||
.. contents::
|
||||
:local:
|
||||
|
||||
``cli53``
|
||||
------------
|
||||
|
||||
Downloads and installs the cli53 binary.
|
||||
|
||||
.. vim: fenc=utf-8 spell spl=en cc=100 tw=99 fo=want sts=4 sw=4 et
|
3
cli53/defaults.yaml
Normal file
3
cli53/defaults.yaml
Normal file
|
@ -0,0 +1,3 @@
|
|||
cli53:
|
||||
version: 0.8.13
|
||||
|
24
cli53/init.sls
Normal file
24
cli53/init.sls
Normal file
|
@ -0,0 +1,24 @@
|
|||
{%- from slspath + '/map.jinja' import cli53 with context -%}
|
||||
|
||||
cli53-bin-dir:
|
||||
file.directory:
|
||||
- name: /usr/local/bin
|
||||
- makedirs: True
|
||||
|
||||
# Install cli53
|
||||
cli53-download:
|
||||
file.managed:
|
||||
- name: /usr/local/bin/cli53-linux-{{ cli53.arch }}
|
||||
- source: https://github.com/barnybug/cli53/releases/download/{{ cli53.version }}/cli53-linux-{{ cli53.arch }}
|
||||
- source_hash: https://github.com/barnybug/cli53/releases/download/{{ cli53.version }}/cli53_{{ cli53.version }}_checksums.txt
|
||||
- require:
|
||||
- file: cli53-bin-dir
|
||||
|
||||
# Link cli53
|
||||
cli53-link:
|
||||
file.symlink:
|
||||
- target: cli53
|
||||
- name: /usr/local/bin/cli53-linux-{{ cli53.arch }}
|
||||
- watch:
|
||||
- file: cli53-download
|
||||
|
21
cli53/map.jinja
Normal file
21
cli53/map.jinja
Normal file
|
@ -0,0 +1,21 @@
|
|||
{% import_yaml slspath+"/defaults.yaml" as defaults %}
|
||||
|
||||
{% set cli53 = salt['pillar.get']('cli53', default=defaults.cli53, merge=True) %}
|
||||
|
||||
{## Add any overrides based on CPU architecture. ##}
|
||||
{% set cli53 = salt['grains.filter_by']({
|
||||
'armv6l': {
|
||||
"arch": 'arm'
|
||||
},
|
||||
'armv7l': {
|
||||
"arch": 'arm'
|
||||
},
|
||||
'x86_64': {
|
||||
"arch": 'amd64'
|
||||
}
|
||||
}
|
||||
,grain="cpuarch"
|
||||
,merge=cli53)
|
||||
%}
|
||||
|
||||
{% do cli53.config.update({'retry_join': cli53.config.retry_join or []}) %}
|
5
pillar.example
Normal file
5
pillar.example
Normal file
|
@ -0,0 +1,5 @@
|
|||
cli53:
|
||||
# Start Consul agent service and enable it at boot time
|
||||
version: 0.8.13
|
||||
|
||||
# vim: ft=yaml
|
8
test/integration/cli53/inspec/cli53_spec.rb
Normal file
8
test/integration/cli53/inspec/cli53_spec.rb
Normal file
|
@ -0,0 +1,8 @@
|
|||
describe file('/usr/local/bin/cli53-linux-amd64') do
|
||||
it { should exist }
|
||||
end
|
||||
|
||||
describe file('/usr/local/bin/cli53') do
|
||||
it { should be_symlink }
|
||||
its('link_path') { should eq 'cli53-linux-amd64' }
|
||||
end
|
Loading…
Reference in a new issue