Commit Graph

314 Commits

Author SHA1 Message Date
Imran Iqbal
17734cb191 ci(kitchen): change log_level to debug instead of info
* Automated using https://github.com/myii/ssf-formula/pull/41
2019-09-23 17:03:33 +01:00
Imran Iqbal
16e6f589cf ci(platform): add arch-base-latest
* Automated using https://github.com/myii/ssf-formula/pull/40
2019-09-22 22:41:03 +01:00
Éric Veiras Galisson
cae0c84319
Merge pull request #98 from myii/chore/standardise-structure
ci(yamllint): add rule `empty-values` & use new `yaml-files` setting
2019-09-11 08:29:33 +02:00
Imran Iqbal
c9a4fc7654
ci(yamllint): add rule empty-values & use new yaml-files setting
* Semi-automated using https://github.com/myii/ssf-formula/pull/27
* Fix errors shown below:

```bash
postfix-formula$ yamllint -s .
./pillar.example
  92:15     error    empty value in block mapping  (empty-values)
```
2019-09-10 22:37:55 +01:00
Niels Abspoel
28ebbadc88
Merge pull request #97 from myii/chore/standardise-structure
ci: use `dist: bionic` & apply `opensuse-leap-15` SCP error workaround
2019-09-08 21:42:42 +02:00
Imran Iqbal
bbbc2607eb ci: use dist: bionic & apply opensuse-leap-15 SCP error workaround
* Automated using https://github.com/myii/ssf-formula/pull/22
2019-09-07 03:42:21 +01:00
semantic-release-bot
077a6a6494 chore(release): 0.18.0 [skip ci]
# [0.18.0](https://github.com/saltstack-formulas/postfix-formula/compare/v0.17.1...v0.18.0) (2019-09-01)

### Continuous Integration

* **kitchen+travis:** replace EOL pre-salted images ([8996d28](https://github.com/saltstack-formulas/postfix-formula/commit/8996d28))

### Features

* **yamllint:** include for this repo and apply rules throughout ([b4fbac2](https://github.com/saltstack-formulas/postfix-formula/commit/b4fbac2))
2019-09-01 11:34:47 +00:00
Niels Abspoel
621504dea4
Merge pull request #96 from myii/chore/standardise-structure
ci(kitchen+travis): replace EOL pre-salted images
2019-09-01 11:42:58 +02:00
Imran Iqbal
8996d287e5 ci(kitchen+travis): replace EOL pre-salted images
* Automated using https://github.com/myii/ssf-formula/pull/16
2019-08-28 07:43:02 +01:00
Niels Abspoel
d3da392f0e
Merge pull request #95 from myii/chore/standardise-structure
feat(yamllint): include for this repo and apply rules throughout
2019-08-15 19:34:18 +02:00
Imran Iqbal
b4fbac2934
feat(yamllint): include for this repo and apply rules throughout
* Semi-automated using `ssf-formula` (v0.5.0)
* Fix (or ignore) errors shown below:

```bash
postfix-formula$ $(grep "\- yamllint" .travis.yml | sed -e "s:^\s\+-\s\(.*\):\1:")
./postfix/osfamilymap.yaml
  1:1       warning  missing document start "---"  (document-start)

./postfix/services.yaml
  11:1      warning  missing document start "---"  (document-start)
  12:1      warning  comment not indented like content  (comments-indentation)
  221:1     warning  comment not indented like content  (comments-indentation)

./postfix/defaults.yaml
  4:1       warning  missing document start "---"  (document-start)

pillar.example
  1:1       warning  missing document start "---"  (document-start)
  2:25      warning  truthy value should be one of [false, true]  (truthy)
  13:17     warning  truthy value should be one of [false, true]  (truthy)
  16:17     warning  truthy value should be one of [false, true]  (truthy)
  22:17     warning  truthy value should be one of [false, true]  (truthy)
  23:17     warning  truthy value should be one of [false, true]  (truthy)
  25:17     warning  truthy value should be one of [false, true]  (truthy)
  29:17     warning  truthy value should be one of [false, true]  (truthy)
  31:17     warning  truthy value should be one of [false, true]  (truthy)
  35:17     warning  truthy value should be one of [false, true]  (truthy)
  47:15     warning  truthy value should be one of [false, true]  (truthy)
  50:18     warning  truthy value should be one of [false, true]  (truthy)
  53:21     warning  truthy value should be one of [false, true]  (truthy)
  62:24     warning  truthy value should be one of [false, true]  (truthy)
  66:31     warning  truthy value should be one of [false, true]  (truthy)
  69:19     warning  truthy value should be one of [false, true]  (truthy)
  70:19     warning  truthy value should be one of [false, true]  (truthy)
  73:14     warning  truthy value should be one of [false, true]  (truthy)
  74:21     warning  truthy value should be one of [false, true]  (truthy)
  78:14     warning  truthy value should be one of [false, true]  (truthy)
  89:15     error    trailing spaces  (trailing-spaces)
  96:6      warning  missing starting space in comment  (comments)
  130:89    error    line too long (105 > 88 characters)  (line-length)
  131:89    error    line too long (101 > 88 characters)  (line-length)
  152:5     error    duplication of key "sender_canonical_maps" in mapping  (key-duplicates)
  154:5     error    duplication of key "virtual_alias_maps" in mapping  (key-duplicates)
  190:5     error    duplication of key "use_file" in mapping  (key-duplicates)
  235:9     error    wrong indentation: expected 10 but found 8  (indentation)
  248:1     error    duplication of key "postfix" in mapping  (key-duplicates)
  258:85    error    trailing spaces  (trailing-spaces)
```
2019-08-15 00:07:07 +01:00
semantic-release-bot
aa0ba507db chore(release): 0.17.1 [skip ci]
## [0.17.1](https://github.com/saltstack-formulas/postfix-formula/compare/v0.17.0...v0.17.1) (2019-07-26)

### Bug Fixes

* **service:** restart service on package change ([75358e0](https://github.com/saltstack-formulas/postfix-formula/commit/75358e0))

### Continuous Integration

* **kitchen+travis:** modify matrix to include `develop` platform ([b505a5d](https://github.com/saltstack-formulas/postfix-formula/commit/b505a5d))
2019-07-26 20:15:53 +00:00
Niels Abspoel
0f1ad60500
Merge pull request #94 from alxwr/service-restart
fix(service): restart service on package change
2019-07-26 22:06:42 +02:00
Alexander Weidinger
75358e03e0 fix(service): restart service on package change
This also provides an ID to be used in a watch_in statement.
2019-07-25 22:15:57 +02:00
Niels Abspoel
fb182529e4
Merge pull request #93 from myii/ci/standardise-structure
chore: use `semantic-release` cross-formula standard structure
2019-07-23 21:01:02 +02:00
Imran Iqbal
e3cca62de5 chore: use semantic-release cross-formula standard structure
* Automated using `ssf-formula` (v0.1.0-rc.1)
2019-07-19 12:33:50 +01:00
Imran Iqbal
6fa00beff2
Merge pull request #92 from myii/ci/use-develop-image-in-matrix
ci(kitchen+travis): modify matrix to include `develop` platform
2019-06-28 07:41:43 +01:00
Imran Iqbal
b505a5d8c7
ci(kitchen+travis): modify matrix to include develop platform
* Use balanced matrix based on `template-formula` guidelines
* Initial ref: https://github.com/saltstack-formulas/template-formula/issues/118
2019-06-28 07:25:19 +01:00
semantic-release-bot
79768b4083 chore(release): 0.17.0 [skip ci]
# [0.17.0](https://github.com/saltstack-formulas/postfix-formula/compare/v0.16.0...v0.17.0) (2019-06-03)

### Features

* **semantic-release:** implement an automated changelog ([3161504](https://github.com/saltstack-formulas/postfix-formula/commit/3161504))
2019-06-03 08:42:42 +00:00
Imran Iqbal
d89b07cd98
Merge pull request #91 from daks/semantic-release
feat(semantic-release): implement an automated changelog
2019-06-03 09:07:45 +01:00
Eric Veiras Galisson
3161504bc1 feat(semantic-release): implement an automated changelog 2019-06-02 20:38:14 +02:00
alxwr
19f5de8383
Merge pull request #90 from alxwr/fix-89
Fix #89 by ignoring only keys which are actually used in Pillar 'postfix:mapping'
2019-04-27 00:37:18 +02:00
Alexander Weidinger
fbaa2dcabb main.cf: ignore only actually used keys of 'postfix:mapping'; fixes #89 2019-04-24 12:38:55 +02:00
Alexander Weidinger
bb6746c5b7 Explain multiple entries in virtual_alias_maps via pillar.example 2019-04-24 12:38:55 +02:00
Alexander Weidinger
c432ae23dc mapping.j2: fixed handling of OrderedDict in Python 3 2019-04-09 20:06:16 +02:00
Niels Abspoel
84c64267fa
Merge pull request #88 from FHE3/add-additinoal-internal-services
Add additinoal internal services
2019-01-08 21:48:57 +01:00
Dimitrij Hilt
7ea197728b
Update pillar.example 2019-01-08 09:36:01 +01:00
Dimitrij Hilt
dada652f3e Add no_args parameter on defined own services to allow create also
internal services without 'user= argv='.
2019-01-08 09:26:27 +01:00
Dimitrij Hilt
097d149322 typo fixed 2019-01-07 17:47:53 +01:00
Niels Abspoel
1da803467f
Merge pull request #80 from bawuenet/proxy_map_support
Fix table type for proxy tables
2018-10-21 00:34:45 +02:00
Niels Abspoel
8f1126039b
Merge pull request #81 from bawuenet/services_yaml
Improve services definitions
2018-10-21 00:33:15 +02:00
Niels Abspoel
f2a64549ab
Merge pull request #82 from bawuenet/example_pillar
Improve pillar example
2018-10-21 00:32:05 +02:00
Javier Bértoli
5c5c5fab72
Merge pull request #85 from mgomersbach/GH-84-dovecot-deliver-gentoo
Specify dovecot_deliver for Gentoo, solves #84
2018-10-10 09:12:53 -03:00
Mark Gomersbach
ae83e2d2a8
Specify dovecot_deliver for Gentoo, solves #84 2018-10-10 02:56:30 +02:00
Andreas Thienemann
fb69881dde Improve services definitions
The services definitions for master.cf were previously defined in
the services.jinja file.

This commit instead moves them into the services.yaml file, as we
should not require any jinja parsing inside the services definitions.

Drive-By: Add a .gitignore file
Drive-By: Set manage_master_config: True for kitchen. We do want to
          verify that the master.cf file generation is actually working.
Drive-By: Add fedora-latest as a kitchen testing target, this helps
          with verifying the os_family map testing that was added in
          PR #79
Drive-By: Link to the kitchen-salt getting started guide in the README
2018-10-08 12:28:01 +02:00
Andreas Thienemann
6cbc1efc1b Improve pillar example
Add dovecot example using the services dictionary with a note that
LMTP delivery might be better.

Slight improvements about pillar example settings.

Reorder examples, put the services dictionary examples which allow
more control above the previous dovecot and submission examples.
Add a note about backwards compatibility to indicate that these
options are still supported.
2018-10-08 11:35:18 +02:00
Andreas Thienemann
9281c79aec Fix table type for proxy tables
http://www.postfix.org/DATABASE_README.html#types specifies the lookup
table types postfix understands.

Most are defined as type:/path/to/table which is currently supported
by the postfix formula.

This does break though as soon as the proxy table type is used which is
a prefix to a normal table definition to indicate caching is requested.

This PR changes the code to discard the proxy prefix to ensure that the
usual logic applies again.
2018-10-07 13:48:13 +02:00
Niels Abspoel
d2896ea148
Merge pull request #78 from bawuenet/more_services_next_iteration
Further improvements on extra services configured in master.cf
2018-10-05 10:55:02 +02:00
Javier Bértoli
99efe7e0d9
Merge pull request #79 from bawuenet/osfamily_rework
Rework of PR #69 to fix Issue #68
2018-10-04 12:05:47 -03:00
Andreas Thienemann
f5d9a0e95d Rework of PR #69 to fix Issue #68
Issue #68 raised a valid problem: The postfix formula is using
the osmap.yaml file incorrectly. It is being used to filter on
the os grain but should instead be filtering on os_family
to correctly account for Red Hat/CentOS similarities.

PR #69 did the fix in a complex way as it only moved parts of the os
mapping into the os_family mapping.

This is a much simpler fix, as it just renames the file and uses
it as a os_family map, which it actually is.

If we really need to differentiate between os flavors inside the
os_family at a later date, we can then add a lookup on the os grain.
No need to complicate manners now.
2018-10-04 16:53:30 +02:00
Andreas Thienemann
e4b507b0b5 Further improvements on extra services configured in master.cf
As promised in PR #75, here's a further (and hopefully final)
iteration of the master.cf service handling:

- Bring dovecot and policyd-spf configuration in line with the
  extras_services item added in PR #75
- Remove policyd-spf configuration again from services.jinja,
  handle this in master.cf instead, where it was before
- Allow for completely custom services to be added via a pillar
  definition in postfix:master_config:services
- Fix legacy dovecot argv example in pillar.example: The example
  showed the extra_args being defined as part of the argv
  parameter, something that would clash with the actual code and
  result in a duplicate '-d ${recipient}' definition in the config.
2018-10-04 05:02:57 +02:00
Niels Abspoel
ca6b26e3ed
Merge pull request #75 from bawuenet/more_services
More pillar managed services
2018-10-01 22:49:54 +02:00
Javier Bértoli
4fb57c98a8
Merge pull request #77 from bawuenet/main_iteration
Improve handling of multiple values in main.cf
2018-09-29 08:42:20 -03:00
Andreas Thienemann
36f0a70813 Improve handling of multiple values in main.cf
In case a list of items (iterable) is passed to the set_parameter
function in main.cf, the list of items are joined by a comma.

This makes parameters with many items a bit hard to read as it
results in long lines.

Postfix also supports an alternative declaration where subsequent
parameter values are written in a new line that starts with whitespace
and thus forms a continuation of the previous line.
This makes parsing multiple entry lines easier for humans.

Old style:
smtpd_milters = { unix:/run/spamass-milter/postfix/sock, connect_timeout=10s, default_action=accept } { inet:localhost:10003, connect_timeout=10s, default_action=accept } { inet:localhost:10004, connect_timeout=10s, default_action=accept } { inet:localhost:10006, connect_timeout=10s, default_action=accept } { inet:localhost:10007, connect_timeout=10s, default_action=accept }

New style:
smtpd_milters = { unix:/run/spamass-milter/postfix/sock, connect_timeout=10s, default_action=accept }
                { inet:localhost:10003, connect_timeout=10s, default_action=accept }
                { inet:localhost:10004, connect_timeout=10s, default_action=accept }
                { inet:localhost:10006, connect_timeout=10s, default_action=accept }
                { inet:localhost:10007, connect_timeout=10s, default_action=accept }
2018-09-29 03:55:38 +02:00
Javier Bértoli
a4cdd1acd2
Merge pull request #74 from bawuenet/postfix_reload
Reload postfix service by default.
2018-09-27 22:00:35 -03:00
N
4a3a94fb39
Merge pull request #76 from netmanagers/master
Fix testing
2018-09-28 00:16:06 +01:00
Javier Bértoli
768cc62f66 Fix testing 2018-09-27 15:12:42 -03:00
Andreas Thienemann
1b9ac1eb4e More pillar managed services
Most of the services in master.cf were already configurable through
the formula but specific ones such as cyrus or uucp were not managed
yet.

This commit adds functionality to manage these services as well
through pillar variables, e.g.:

postfix:
  master_config:
    services:
      uucp:
	enable: True
2018-09-26 21:52:02 -07:00
Andreas Thienemann
44210a1fe8 Reload postfix service by default.
The postfix service is currently being restarted whenever a
config item changes.
This is unnecessary as the postfix service can reload a new
config.

Set reload: True to prevent unnecessary restarts of the service.
The old behavior can be restored by setting the pillar key
reload_service to False.
2018-09-26 17:33:14 -07:00
Niels Abspoel
3ded29687e
Merge pull request #73 from Perceptyx/master
Force batch in FreeBSD
2018-09-25 20:54:58 +02:00