Commit Graph

356 Commits

Author SHA1 Message Date
R. Tyler Croy 262279197a
Add Canary into the main navbar 2017-09-03 13:21:08 -07:00
R. Tyler Croy 21ec41aab7
Use a different DSN for Canary errors 2017-09-03 13:20:49 -07:00
R. Tyler Croy 7153e37d62
Properly expose the Canary service and rewrite URLs in the proxy layer
Related to #47
2017-09-03 13:05:37 -07:00
R. Tyler Croy f71bf3d7a8
Add the canary service to production
YAY
2017-09-03 12:52:56 -07:00
R. Tyler Croy 05f7fe4a76
sentry-plugin is now a real part of the jenkinsci org :shipit: 2017-09-01 14:29:58 -07:00
R. Tyler Croy 76c2b52022
Nuke the blueocean-pipeline-editor-plugin/ directory before building plugins
Fixes #18
2017-09-01 14:29:20 -07:00
R. Tyler Croy 851da2a0f9
Add a couple more organizations to the list 2017-08-30 06:43:20 -07:00
R. Tyler Croy 00033fae17
Remove the generated per-master Terraform resources
These are no longer needed since we're bouncing all master requests through
nginx.
2017-08-30 06:34:05 -07:00
R. Tyler Croy 7546c02949
Add @ysb33r to the super-duper private alpha 2017-08-30 05:49:47 -07:00
R. Tyler Croy 3fca021ea2
Add a dropdown to select from the existing instances 2017-08-28 12:06:19 -07:00
R. Tyler Croy 8c32a4bdec
Actually redirect requests to /blue/pipelines
Apparently I was previously hitting some cached information in Chrome.

Validated this time with wget(1) which doesn't cache

Really really fix #1
2017-08-28 10:50:50 -07:00
R. Tyler Croy 6664294404
Incorporate Sentry error handling for the webapp tier
This will report into the "Code Valet Webapp" project in Sentry
2017-08-28 07:25:53 -07:00
R. Tyler Croy 37adb09900
Bounce traffic "by default" through to Blue Ocean
Fixes #1
2017-08-28 05:57:56 -07:00
R. Tyler Croy 27bec50a0f
Update the Jenkins instance URLs to reflect their hiding under codevalet.io 2017-08-27 11:38:45 -07:00
R. Tyler Croy a1c590d4d3
Switch the nginx k8s liveness probe to tcp, the http probes are useless here 2017-08-27 11:28:21 -07:00
R. Tyler Croy 4602dc749d
Add the proper badge links now that masters are re-parented under codevalet.io 2017-08-27 11:13:04 -07:00
R. Tyler Croy b43edf2de1
fixup! Update some liveness probes to hit valid URLs 2017-08-27 11:12:24 -07:00
R. Tyler Croy 12915c0879
Properly handle the right URL for the github authentication 2017-08-27 11:11:59 -07:00
R. Tyler Croy e611936d43
Update some liveness probes to hit valid URLs
Now that Jenkins is prefixxed, the liveness probe needs to hit the right URL or
Kubernetes will killdoze the containers
2017-08-27 11:11:07 -07:00
R. Tyler Croy 0b7f50785c
Improve the proxy support with Let's Encrypt (properly loaded) and reversing to Jenkins
There's a lot of minor changes here after some tinkering in production #yolo
2017-08-27 09:58:50 -07:00
R. Tyler Croy c099eef028
Support running Jenkins masters with a URL prefix under codevalet.io
This is required to make the Let's Encrypt stuff all work
2017-08-27 09:57:34 -07:00
R. Tyler Croy 1ebc51db83
Add a simple script for rolling nginx/proxy updates 2017-08-27 09:50:38 -07:00
R. Tyler Croy 33e980d5ca
Logic was wrong way around, oops 2017-08-26 21:14:29 -07:00
R. Tyler Croy d5fdd40403
Properly test for the env variable when registering certs 2017-08-26 21:06:52 -07:00
R. Tyler Croy 48630ed002 Merge pull request #40 from rtyler/proxy-39
Introducing an nginx proxy for mapping traffic in/out of containers.
2017-08-26 20:25:47 -07:00
R. Tyler Croy bbefb8e25e
Swamp out the nginx-ingress nonsense for an nginx-based service based on our proxy
Assuming everything here works, this should result in some certs, yey

Fixes #39
2017-08-26 19:36:58 -07:00
R. Tyler Croy a7a3bb54d2
Add a little script for registering the letsencrypt certificates 2017-08-26 19:18:44 -07:00
R. Tyler Croy 7687a6bdf5
Add certbot to the proxy container 2017-08-26 19:02:36 -07:00
R. Tyler Croy 5074ecca7e
Generate some location {} blocks for nginx at runtime
This is using the __END__/DATA trick in Ruby which is literally the worst thing
I know how to do in Ruby (https://shifteleven.com/articles/2009/02/09/useless-ruby-tricks-data-and-__end__/)

This code will need to be eventually replaced with a proper smart proxy, but if
you're going to write a dumb proxy, make it a REALLY DUMB proxy
2017-08-26 16:50:15 -07:00
R. Tyler Croy abfe2bb5c4
Use bash scripting instead of derp shell
Or whatever alpine ships with
2017-08-26 15:44:17 -07:00
R. Tyler Croy 21e6f2f37d
Add the run-nginx wrapper script 2017-08-26 15:43:17 -07:00
R. Tyler Croy 3fc757e4ad
Move away from the perl variable setting approach
Instead this will dynamically generate configuration when the proxy comes
online. This will be a lot more reasonable since Kubernetes sets some
environment variables for the pod (e.g JENKINS_RTYLER_SERVICE_HOST) which we'll
need to balanacing to the Jenkins masters
2017-08-26 15:34:49 -07:00
R. Tyler Croy 8260de80b9
Pin to Ruby 2.3 which doesn't have the same problems with Tilt warnings as 2.4
See https://github.com/rtomayko/tilt/issues/316
2017-08-26 14:39:05 -07:00
R. Tyler Croy 5379af57ca
Add some nginx/proxy configuration to allow docker-compose and kubernetes-based proxying
Getting environment variables into nginx is kind of a pain, and unfortunately on
recent versions of docker-compose it is impossible to get an IP address of a
linked container. Rather we need to jump through these god-awful hoops to run a
local resolver in the container in order to convert the string 'webapp' into an
IP address via dnsmasq and /etc/hosts.

BLECH
2017-08-26 14:30:35 -07:00
R. Tyler Croy 970456933f
Add support for using `make run` to stand up docker-compose which will launch the webapp/proxy 2017-08-26 13:00:05 -07:00
R. Tyler Croy ea6ecd68b0
Set up a new sub-make project for building the nginx-based proxy
This commit also contains some re-organization of the primary Makefile to be a
bit more organized

Work in progress on #39
2017-08-26 13:00:05 -07:00
R. Tyler Croy aed38504d3
Switch the project to the AGPL which makes more sense for this
Better to do this now before it gets all complicated with other contributors
2017-08-26 12:41:10 -07:00
R. Tyler Croy 4d80458d7b
Expose dogstatsd in the cluster 2017-08-26 12:34:53 -07:00
R. Tyler Croy 0d2f0ae369
Reformat the hostname for datadog 2017-08-26 02:23:38 -07:00
R. Tyler Croy afa900136b
Fix bad YAML for the jenkins master replicationcontroller 2017-08-26 02:19:52 -07:00
R. Tyler Croy 86569596a0
Fix some small errors with the agent-template template 2017-08-26 02:18:02 -07:00
R. Tyler Croy 3b8a926b4a
Enable Agent->Master Access Control 2017-08-26 02:17:47 -07:00
R. Tyler Croy d0e2d51462 Merge pull request #37 from rtyler/datadog
Add datadog integration into the master infrastructure
2017-08-26 01:08:08 -07:00
R. Tyler Croy 8973a23dc9 Merge pull request #36 from rtyler/vm-templates-4
Auto-generate the Groovy setup script for Azure agents from the agent-templates
2017-08-26 01:06:51 -07:00
R. Tyler Croy b23f9bea3e
Add datadog integration into the master infrastructure 2017-08-26 00:47:42 -07:00
R. Tyler Croy 0468abd5fa
Forgot to add the doc page to the repo, w00ps! 2017-08-26 00:27:53 -07:00
R. Tyler Croy 46b8f3a02a
Auto-generate the Groovy setup script for Azure agents from the agent-templates
This is hacky, whee

Fixes #4
2017-08-26 00:22:53 -07:00
R. Tyler Croy 00c3a55964 Merge pull request #35 from rtyler/11
Add the Code Valet Shared Libraries by default to instances.
2017-08-25 16:15:35 -07:00
R. Tyler Croy c1f109c9de
Add the Code Valet Shared Libraries by default to instances.
Fixes #11
2017-08-25 14:41:38 -07:00
R. Tyler Croy 249543355c Merge pull request #34 from rtyler/pipeline-global-config
Set the default Docker Label for Pipeline
2017-08-25 10:14:42 -07:00