Commit Graph

652 Commits

Author SHA1 Message Date
d8285b05f2 Moving env files into separate directory for better organization 2018-09-05 15:37:28 -06:00
968bb9f10f Prevent Github API Rate Limits
When building netbox-docker on Travis, it happened too often that the
build failed because of Github's API rate limits. These apply for all
requests, but if the request is unauthenticated they are applied by IP.

This is bad for netbox-docker, as we build on Travis where the build-
workers are shared with the rest of the world.

This commit adds the possibility to define OAuth credentials as
documented at [1]. Hopefully this leads to more reliable releases of
netbox-docker images.

[1] https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications
2018-08-28 09:21:08 -07:00
aafa6483dc fix wrong version increment 0.4.0 2018-08-16 08:19:49 -07:00
38ea286111 Bump VERSION file 2018-08-16 17:17:37 +02:00
be0ce47bc6 Merge pull request #91 from ninech/webhooks-backend
Webhooks Backend (based on #90)
2018-08-16 08:02:57 -07:00
2b3f831749 Don't lock Django to explicit version
... but rather use the same definition that is currently used in
Netbox's `requirements.txt`.
2018-08-14 10:08:34 -07:00
fb22a19893 ✏️ Added nginx troubleshooting section 2018-08-13 15:37:06 -07:00
fdefa3465d 🆙 Update nginx to the latest version 2018-08-13 15:30:43 -07:00
645ec1281c Use a default Redis password
Although it does not provide any additional security, it shows how to
configure Redis with a password and how to use Netbox using a password
protected redis server. Something that might be considered in a classic
production deployment. (But is mostly irrelevant in e.g. a Kubernetes /
OpenShift deployment as the isolation is usually on a network level.)
2018-08-13 15:19:29 -07:00
013f81b791 ♻️ Make netbox-worker it's own container
One container should ideally have one responsibility [1]. Therefore I
implemented the netbox-worker to start in it's own container. This is
possible, because netbox and the worker communicate via redis anyway.

They still use the same image underneath, just the "command" they
execute while starting different.

Or in other words: I see no reason to introduce supervisord, when we
already have docker-compose which can take care of running multiple
processes.

Also, here's another benefit: Now it's possible to view the logs of the
webhook worker independently of the other netbox logs (and vice-versa).

Other changes in this commit:
* I don't see a reason to put a password for Redis in the docker-compose
  setup, so I removed it.
* Slightly changed the nginx config, so that the nginx startup command
  becomes simpler and any error should be visible in the docker log.
* Some housekeeping in the `Dockerfile`.
* Added some troubleshooting advice regarding webhooks to the README.

I'd like to thank Brady (@bdlamprecht [2]) here who did the harder
work of figuring out what's even required to have webhooks working. [3]

[1] 
https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#decouple-applications
[2] https://github.com/bdlamprecht
[3] https://github.com/ninech/netbox-docker/pull/90
2018-08-13 14:04:09 -07:00
b8885e4b79 Disable webhooks by default*
*but enable it by default for anyone who checks out the netbox-docker project
via the netbox.env file.
2018-08-13 13:17:41 -07:00
bf557877d1 Read redis password like any other secret 2018-08-13 13:16:10 -07:00
b88974ef9f Working implementation of webhooks using new 'redis' container 2018-08-10 17:55:09 -06:00
6b5a4cf1db Bump VERSION file 0.3.1 2018-08-09 00:35:28 +02:00
f1a78d1b9c ⚙️ Don't build webhook branch anymore
Because it's merged into Netbox since 2.4.
2018-08-08 15:33:35 -07:00
61dd958af4 Merge pull request #86 from hex2a/patch-1
docker-compose: use latest postgres minor version (10.4)
2018-08-05 14:18:04 +02:00
fcf01432ed Merge branch 'master' into patch-1 2018-08-05 12:42:58 +02:00
7b6842fca3 Merge pull request #83 from GnomeZworc/master
Add auth-ldap-user-dn-template in ldap_config.py
2018-08-05 12:42:34 +02:00
2aaf1ec18d Merge branch 'master' into master 2018-08-05 12:20:01 +02:00
4fee1e3bf3 Merge pull request #85 from sts/patch-1
Update docker-entrypoint.sh
2018-08-05 12:17:05 +02:00
c4b51e4006 Merge branch 'master' into master 2018-08-05 12:13:02 +02:00
b544fa5e4f docker-compose: use latest postgres minor version (10.4) 2018-07-28 18:22:55 +02:00
cb37e3ba92 Update docker-entrypoint.sh
Make netbox-docker function with  v2.4-beta1 again, fixes #84.

> The shell --plain option is deprecated in favor of -i python or --interface python.
> The shell --interface option now accepts python to force use of the “plain” Python interpreter.
https://docs.djangoproject.com/en/2.0/releases/1.10/#deprecated-features-1-10
2018-07-24 10:56:46 +02:00
9d1a602f71 Update ldap_config.py 2018-07-20 12:24:17 +02:00
5f24972bb7 Change default value of AUTH_LDAP_USER_DN_TEMPLATE 2018-07-20 12:21:47 +02:00
824141f587 Merge pull request #82 from DisasteR/fix-bad-ldap-variable
resolve AUTH_LDAP_GROUP_CACHE_TIMEOUT from env
2018-07-17 11:49:06 +02:00
4c49cad744 Add auth-ldap-user-dn-template in ldap_config.py 2018-07-11 16:50:02 +02:00
1835f0b05c resolve AUTH_LDAP_GROUP_CACHE_TIMEOUT from env
Resolve ValueError: invalid literal for int() for AUTH_LDAP_GROUP_CACHE_TIMEOUT
2018-07-11 11:52:25 +02:00
48accce8e6 Merge pull request #80 from ninech/fix-79
Import Error Fix
2018-06-28 10:22:17 +02:00
5e0b0a608b use docker-compose.yml instead of docker-compose.test.yml 2018-06-28 09:59:59 +02:00
0d8e719675 add initializers to specs 2018-06-28 09:44:07 +02:00
cc160198ef fix import constant 2018-06-28 09:28:23 +02:00
d851f28913 fix deprecated value 2018-06-28 09:28:07 +02:00
8333fafcf1 Merge pull request #55 from Grokzen/auto_weight_choices
Add support for auto_weight counter
2018-06-26 09:03:15 +02:00
c85f658982 Merge branch 'master' into auto_weight_choices 2018-06-25 16:31:39 +02:00
3e485049e0 Merge pull request #66 from Grokzen/fix_filter_logic_field
Fix for broken field filterable
2018-06-25 16:31:16 +02:00
6787425707 Merge branch 'master' into fix_filter_logic_field 2018-06-25 11:27:05 +02:00
df85563b1d Merge pull request #78 from ninech/allowed-hosts
add allow all hosts by default
2018-06-25 11:16:23 +02:00
10533ab4c3 add allow all hosts by default 2018-06-25 10:41:31 +02:00
1e1a265b4a Merge pull request #77 from ninech/license
add license
2018-06-25 09:12:39 +02:00
26728c7366 add license 2018-06-22 16:27:45 +02:00
024ab5c138 Merge pull request #70 from ScanPlusGmbH/alpine-update
Update to Alpine 3.7
2018-06-04 13:41:35 +02:00
16c750d8e4 Merge branch 'master' into alpine-update 2018-06-04 11:25:02 +02:00
1be054bb0e Fix ssl package dependency 2018-06-04 11:17:41 +02:00
5a1f6f6dd9 Fix the default creation value for weight 2018-05-18 21:33:50 +02:00
170bf4e03d Remove unused variable 2018-05-18 21:24:31 +02:00
7afa9454ba Bump version to 0.3.0 and add line in README describing the breaking change. 2018-05-18 21:22:05 +02:00
187c349fde Add support for auto_weight counter on choices when loading selection field from custom_fields.yml
This also fixes a bug when using the same value for 2 different custom fields breaks becuase it tries to
create a new CustomFieldChoice object instead of reusing the one that already exists.
2018-05-18 21:17:21 +02:00
cdbfdaf361 Implement fix for field 'filterable' that was broken. Added new custom field parameter 'filter_logic' 2018-05-18 21:16:01 +02:00
5e5cc13a05 Update to Alpine 3.7
Because the tag "python:3.6-alpine" points to Alpine 3.4 which is now
end of life (as of 2018-05-01) the image now pulls the Alpine 3.7 python
image
2018-05-09 09:52:33 +02:00