[Jenkins-infra] Discussion at 16:30 UTC about plugin site infra requirements
R. Tyler Croy
tyler at monkeypox.org
Wed Sep 28 19:43:25 UTC 2016
Spike took some notes during the discussion earlier, cross-posting here for
posterity. He did a much better job of taking any notes than I did, that's for
sure!
Discussion: Azure deployment questions
* Tyler got an understanding of the demo architecture from Ben
* Front-end app (deployed to S3 - can be replaced by blob store)
* Backend Service (deployed in docker container)
* Don't currently have any Docker infrastructure in Azure.
* Best path to move forward: examine existing Jenkins Puppet Infra and follow those patterns.
* I have the time to point to things to show you how you could do those things (in Jenkins infra IRC channel). I don't have time to do the work.
* Caleb: Who is responsible for transition of existing demo to Jenkins INFRA-friendly puppet?
* Action: Spike needs to decide (done - Caleb unless Ben screams loudly)
* Caleb psuedo-volunteers (thumbsup from Spike)
* Tasks:
* [Caleb] Convert plugin site deployment to be Jenkins-infra-friendly (based on Puppet similar to existing stuff)
Discussion: SEO-able URLs
* Tyler: we will need SEO URLs
* Daniel: working with search engines was an original requirement
* Daniel: wiki site will continue to exist and plugin pages on the wiki will continue to exist
* Daniel: Need to be careful - Jenkins.io may have an SEO hit if we have duplicate content on both wiki and plugin site
* Problem: Currently, we have a 404 problem -- current behavior redirects back to single-page-app index page. This works well for the browser that runs the app, but fails for search engine indexing.
* Tasks
* [Gus/Michael] Make URLs SEO friendly
Discussion: Synchronized browser header
* Problem: as the header changes on jenkins.io, the plugin site gets out of sync
* Tyler: This needs to be updated in the Jenkins.io build process so that
* Tyler: the accounts app has the same problem, so we can create a solution that works for both apps. I'm also OK dealing with the stale headers for now, but not ideal
* Tyler: I'd be OK with rebuilding the plugin site each time jenkins.io changes (perhaps via a pipeline). I wouldn't want to iframe it.
* Gus: prefers embedding the plugin site directly in the jenkins.io webapp so that the header can just be the same. Also keeps from having separate app domains.
* Tasks
* [Gus/Michael] Figure out header strategy
Discussion: Docker on Azure
* JENKINS-INFRA is not using elastic container service
* Tyler: If you want to run docker, it needs to be done Puppet
* No examples yet of Docket+Puppet on Azure yet
Discussion: frontend and backend deployment architecture
* Should the frontend be in jenkins.io directly or running as a completely separate docker app?
* Tyler is open to either. Gus prefers to be embedded in jenkins.io
* Architecture
* Frontend - Static files (generated during build)
* Backend - API app based on Tomcat Jersey REST app
* Tyler: can we simplify by just putting the Static files into the API app?
* Spike: That violates Ben's original goal was to be able to scale the frontend and backend separately as needed.
* Tyler recommends: bring the frontend/backend back together. If we need to scale later, we can use CDN.
* Gus: I'd prefer having the static single page app in the jenkins.io app -- it simplifies headers and consistency
* Caleb: is there any goal of exposing the API for direct external use?
* Gus: seems like it would be useful
* Caleb: if API is externally exposed, it becomes more obvious that we should keep the frontend and backend separate.
* Tyler: I don't care if it's a good architecture and it doesn't affect me
* Tasks
* [Gus/Michael/Caleb] Make a (good) decision about best frontend/backend architecture strategy
Gus Concerns:
* Does plugin site and wiki exist at same time? Yes.
* Need a decision on how Jenkins IO, plugin site, and wiki will live together
* Spike: that's for Gus/Michael to work out -- just don't impact Tyler
Caleb thoughts on steps:
* Need some build jobs space hosted on infra
* Need to open repositories or use jenkins repos
* Put build jobs for the existing website on Jenkins infra -- leave deploying to AWS at first
* Convert to using Puppet manifests to deploy
* Tyler: I need to know when you plan to work on this. For next two weeks, I have some time, but mid-Oct gets hairy
* Caleb's Warning: the development flow will likely change
* Tyler: we use PRs, tests and auto-deploys
* Caleb: do you have a staging? Tyler: no. Until now, we haven't had the infrastructure for it.
- R. Tyler Croy
------------------------------------------------------
Code: <https://github.com/rtyler>
Chatter: <https://twitter.com/agentdero>
% gpg --keyserver keys.gnupg.net --recv-key 1426C7DC3F51E16F
------------------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.jenkins-ci.org/pipermail/jenkins-infra/attachments/20160928/6967a216/attachment.asc>
More information about the Jenkins-infra
mailing list