Git Product home page Git Product logo

Comments (7)

tbille avatar tbille commented on June 22, 2024 1

@barrymcgee added a few tasks to check what can be done with it

Needs to be done

  • Investigate where github webhook endpoint is on jenkins
  • Add webhook on organisation to push merges on master to jenkins
  • Test it 😄 #winning

from jaas.ai.

nottrobin avatar nottrobin commented on June 22, 2024 1

Okay I think I've achieved this:

So I think we can call that success.

I filed https://github.com/ubuntudesign/base-squad/issues/471 to track the next step, which is to create a portal to make it easier to trigger production deployments.

from jaas.ai.

barrymcgee avatar barrymcgee commented on June 22, 2024

@tbille Would you be able to help me with this, please? I'm hoping it's a quick settings change in the Jenkins config? I had a quick look and fiddled with some settings but it doesn't seem to be working?

from jaas.ai.

nottrobin avatar nottrobin commented on June 22, 2024

So this has been the ultimate plan for every site for a while, but I'm worried that Just Doing It will actually produce a worse experience for developers. Here's why (#clickbait):

At the moment, the flow from master to production is:

  • trigger the staging build
  • follow the log output
  • when it's finished, click the link - which takes you over to the product job with the image_tag filled in for you
  • build the production job

If we simply automated the staging build step then instead the flow becomes:

  • open the staging build
  • find the latest build, that was run automatically
  • open the log
  • scroll to the bottom
  • click the link to take you to production job with the image_tag filled in for you
  • build the production job

This seems to me clunky and fundamentally less intuitive - it will feel unnatural and constantly annoying to have to open the staging job log, for a job you didn't start - and also doesn't really save you a whole lot of time.

So my plan for fixing this is to develop a page, similar to http://project-builds.demo.haus, which would know what version was on staging and provide you with a simple "deploy to production" link to start the job, reducing the production deployment steps significantly:

  • open the production builds page
  • click the link
  • build the production job

I think now would be a good time to schedule the building of that webpage in the base squad. @tbille could you help me put that in the plan?

from jaas.ai.

nottrobin avatar nottrobin commented on June 22, 2024

Actually, sorry, I just properly read the Reasons:

@barrymcgee: In order to improve collaboration and communication with the design team, I want them to be able to quickly be able to view the staging site and know immediately what work has landed.

For this reason I imagine @barrymcgee will tell me the clunky developer release experience is tolerable so you get the benefit of designers immediately seeing the state of master. So we could Just Enable It. But we should still prioritise the building of that page to smooth the production release process.

from jaas.ai.

barrymcgee avatar barrymcgee commented on June 22, 2024

@nottrobin Excellent - thank you! I would also add that your first step assumption assumes that a developer deploys to staging but never actually leaves the Jenkins portal to check the site in their browser.

In my experience, there is always a step to return to Jenkins to find the last completed job to staging before deploying to prod.

Delighted this is done though and new status page is a great idea! 👌🏻👌🏻👌🏻

from jaas.ai.

nottrobin avatar nottrobin commented on June 22, 2024

@barrymcgee yeah fair enough. I always keep the staging deployment log open after running it, so it all seems a bit more linked to me than if it was automatically triggered, but I can appreciate that YMMV.

Which kinda means we need the portal even more ;)

from jaas.ai.

Related Issues (20)

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.