Giter VIP home page Giter VIP logo

consul-formula's Issues

SLS render fails without `template_engine`

I've got the following error when running consul-template with a pillar similar to the example:

    Data failed to compile:
----------
    Rendering SLS 'base:consul-template.config' failed: Jinja variable 'dict object' has no attribute 'template_engine'

Adding template_engine: null to the tmpl section results in errors about the resulting None value.

template_engine: jinja causes jinja syntax errors when trying to read the go template used by consul-template.

I was able to bypass the issue by removing line 15 in consul-template/config.sls: - template: {{ tmpl.template_engine }}

Default to support Multiple IPs

Hi,

setting bind_addr to 0.0.0.0 fails on hosts with multiple IPs.

If you change consul/defaults.yaml:
bind_addr: 0.0.0.0
to
`bind_addr: "{{ grains['ip4_interfaces']['eth0'][0] }}"``
then it will always work.

Not a bug, and not foolproof either. After posting this, I realised just how hard it is to get the 'right' IP from the grains!

Geoff

[BUG] service fails to start in Centos 8

Bug details

Describe the bug

Just noticed this when we changed from Centos 7 to Centos 8.
With selinux enforcing, the consul binary moved from /tmp retains the context tmp_t. selinux denies execution of the consul binary so startup fails.

Steps to reproduce the bug

In pillar, set:

consul:
  service: True

Install and try to run consul on a Centos 8 minion.
salt-call state.apply consul

state will fail.

Check the audit log:

grep consul /var/log/audit/audit.log

Expected behaviour

service should start

Attempts to fix the bug

We use the following in install.sls after file.rename fixes the context;

{% if grains['os_family'] == 'RedHat' %}
consul_bin_restorecon:
  module.run:
    - file.restorecon:
        - /usr/local/bin/consul-{{consul.version}}
    - watch:
      - file: consul_install
{% endif %}

Use the module function file.restorecon to change the context of the consul binary to match destination location of the file - which then permits execution by systemd.

Windows support

Hey, it would be great if you added support for winows agents.

Thanks :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.