-
Notifications
You must be signed in to change notification settings - Fork 848
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Release 7.12.0 #8938
Comments
@taylorsilva thank you for creating this issue. We have an epic for this release. Whoever got assigned this issue will do the release. |
Sorry to folks seeing this issue still open. Haven't had time to start cutting the release. You know, life. |
@taylorsilva @xtremerui is there any way external people like me can help? |
Hi @marco-m-pix4d , thanks for the ping and sorry for the delay. Last week, we started to work though the steps in the issue template, but we needed to put it down temporarily for other priorities. The plan is that we (I) pick this up again early next week. |
@wayneadams thanks a lot for the update, appreciated! |
@xtremerui Looks like Vaults' cert just expired |
Chipping away at getting a new cluster setup: https://ci.concourse-oss.org/ (it's setup with Github auth to the Next step is updating the pipelines. Planning to remove all the bosh jobs from the release pipeline because it's too heavy to keep maintaining. Focus will be on getting the release pipelines setup and running and pushing 7.12.0 out the door For those out of the loop, the infrastructure at https://ci.concourse-ci.org/ is maintained by Broadcom. Only Broadcom employees have access to the GCP account where all the infrastructure is running. They currently have no ETA as to when they'll be able to get it fixed. I've decided to go ahead and setup a new Concourse cluster for the community to start releasing from. Goal is to get us back on track and releasing regularly again. Once 7.12.0 is out I'm going to focus on getting the PRs pipeline working. |
@taylorsilva for sure I am happy and what to thank you. But, I also want to say one thing: please be careful not to step into the slope towards open source maintainer burn out! In case of doubt, protect yourself. 💪 Also if I may ask: the infra will have a cost, who is going to fit the bill? Maybe it would be worthwhile to enable GitHub sponsorship ? |
Thanks for the reminder. I am constantly aware of this as I've read many of the same maintainer burnout stories that you likely have. I'm doing my best to not push myself very hard and just do one small thing at a time. For infra cost, I'm footing it right now. I'm in a good financial position that I can do this, though I am trying to stay thrifty to stretch my dollars! I do want to start doing Github sponsors or OpenCollective. I'll do that once a release is out and folks can see that we are able to keep pushing releases out. I want people to feel confident giving money to the project and I think that means seeing some results first in the form of a new release. |
GitHub sponsors would be nice as it would give us a way to help ensure the future of Concourse. |
A little update for everyone because I'm going on vacation so won't be working on this over the next week and a bit. I've got the main pipelines setup and running, but not everything is passing yet. I'm focusing on the main So order right now is:
Most of my time has been spent getting tests to pass on the new infrastructure. The workers are running on Fedora 40 which only has cgroups v2 enabled. I only ran into issues with running container-in-container tests (like DinD). There's also a test failing right now that I'm pretty sure is due to Hetzner's NIC having a max MTU of 1450 instead of 1500 (see here). Here's a snapshot of all the jobs passing right now: I've still got to get some infra setup like an S3 bucket for storing some artifacts and for testing the S3 resource-type.
|
Funny I missed that! I will use that for my own projects :-) Thanks for mentioning it!
I think you know this, but mentioning for completeness: Hetzner has the notion of projects, this might be useful if you want to automate terraforming and have some separation. |
🎉 Can finally move onto the resource pipelines! |
In the final stretch: Need to bump some Go dependencies to resolve CVE's in the main binary. I'm not going to get any other features or fixes in for this release though. Anything else will go into the next release, |
Totally agree |
Currently testing the latest RC build (7.12.0-rc.2) on https://ci.concourse-oss.org/ If anyone else wants to give it a spin they can pull that image
I'm going to let it run for a few days and then make the official release. Let me know if you run it and if there's any issues. If everything looks good drop a 🚀 emoji on this message. |
I am checking if FiveTwenty can take the concourse rc for a spin. |
We did it! The binaries and container images are available for everyone to download. A few lingering tasks:
|
Thanks @taylorsilva ! |
It also seems that the binary_params option doesn't seem to work correctly in our preliminary testing: This lead me to lib/pq#528 |
@analytically Thanks for reporting those issues! I'll see what happened to the Windows release. Sadly I don't have a windows worker setup so that was one area of testing I had to drop. For the binary_params I guess that's something we could fix. Do you think we'd run into something similar with concourse/flag#11? I've noticed I have a gap here with understanding how new params affect these db drivers. |
I think your comment on concourse/flag#11 regarding libpq support is valid. Though I believe binary_params with jsonb is a Go specific thing, and easily solved, for example see https://github.com/go-testfixtures/testfixtures/pull/84/files |
While the Bosh Release Repository was updated with the new variables tied to new functionality, the Bosh Deployment repository was not updated to include the new Ops Files. This repo does lag behind a bit so there was a gap with AWS SSM Support that is entirely added in concourse/concourse-bosh-deployment#260 along with the new shared path functionality. All properties should map the spec entries for both web and worker. |
Figured out the issue with the windows artifacts. The script that builds the binary mostly worked, it was the last step that zipped everything together that was incorrect and resulted in a zip file that contained an empty folder: concourse/ci@a4c001d |
Thanks @kcbimonte for the PR! I'll review it once I figure out the other bosh-stuff in the release pipeline. I ended up cutting too much out when I was removing the bosh related jobs. I'm trying to figure out how I can upload bosh releases without a director right now ( |
Windows package actually contains stuff now! Thanks for initially pointing that out @analytically |
Bosh release is now up! Had to fork and re-publish a resource to get it working (old resource was using bosh-cli 3.0.8, bumped that to the latest version). @kcbimonte Since it sounds like you use bosh, give the new release a spin and let us know if there are any issues. https://bosh.io/releases/github.com/concourse/concourse-bosh-release The windows package also looks good. I had to hack the pipeline a bit to get the bosh release job pushing out a 7.12.0 version. If you manually open the bosh blobs you'll notice that RC1 got packaged instead of RC2, what we actually released on GitHub. There's no difference between the two RC's though. They're built off the exact same commit and use the same resource-type versions. Working on the helm chart release next! |
It seems that re-uploading messes up the versioning. Version displayed on concourse: Warning from fly:
Concourse linux binary seems consistent:
|
@o-orand damn! I was worried this would be an issue with the bosh-release. It wasn't easy to get that part working and I think running the job post-release messed with the pipelines version-ing logic, as you've shown. sigh I'm not gonna fix that right now. Right now I'm going to focus on working with the Broadcom folks that have reached out to me and get things working back on https://ci.concourse-ci.org/ I'll likely push out a 7.12.1 from their infrastructure once we're back on their stuff, since they have the infra to test bosh properly. Sadly, releasing bosh from an unsupported bosh-IAAS proved to be very difficult task. I don't like that I couldn't test the bosh release at all. Anyways, that'll all be fixed with 7.12.1 |
@taylorsilva Thanks for the new Concourse release! I was wondering if there is still a plan for a corresponding release of concourse-chart? From your comments above, it sounds like that's the last remaining item for this GitHub issue. |
@cfryanr I was about to write some long answer about why I'm blocked, but then realized that I am unblocked from releasing the chart! I wasn't able to previously release a new version of the chart because the chart repo points to a bucket that is owned by Broadcom. Thankfully the Broadcom folks and I are talking now and I'm able to release using the original pipeline infrastructure ( The main development pipelines are still blocked (expired Bosh certs 😞), but PR pipelines are working again! Anyways, chart version 7.14.0 is released! 🎉 I'm going to close this issue now. I know there are outstanding issues with the bosh release (sorry folks!), but I can't do anything about those until Broadcom gets the Bosh deployment fixed. I think the majority of people are satisfied now. I'll have more time to focus on Concourse in the new year. More news on that to come 😉 |
Creating this issue to discuss making a new release since I saw Rui make the milestone for one.
Are there any blockers at this point?
@xtremerui (not sure if there's anyone else on the Broadcom side I should tag too)
Steps for a new major/minor release:
Add this issue to the
v<M.m.x>
milestoneBump the appropriate versions for resource types. Go through the list of resource types below and take a look at which resource type repositories have had new commits or PRs by comparing the last release to the
master
branch. Take a look at what those changes entail and bump the version in their respective pipeline inci.concourse-ci.org
.If the changes were only README or repo restructuring changes with no user impact, you don't need to bump the version
If the changes were small bug fixes or changes, you can do a patch version bump
If the changes were adding of features, you can do a minor version bump
If the changes involve a breaking changes, that should be a major version bump
git: concourse/git-resource@v...master
registry-image: concourse/registry-image-resource@v...master
s3: concourse/s3-resource@v...master
time: concourse/time-resource@v...master
semver: concourse/semver-resource@v...master
pool: concourse/pool-resource@v...master
mock: concourse/mock-resource@v...master
github-release: concourse/github-release-resource@v...master
hg: concourse/hg-resource@v...master
docker-image: concourse/docker-image-resource@v...master
bosh-io-stemcell: concourse/bosh-io-stemcell-resource@v...master
bosh-io-release: concourse/bosh-io-release-resource@v...master
tracker: concourse/tracker-resource@v...masterRepo archived since Tracker is EOLCreate your release branch on the
concourse/concourse
github repo with the following formatrelease/M.m.x
(M being the major version and m being the minor version)Create the release branch on
concourse/concourse-docker
repository.Create the release branch on the
concourse/concourse-bosh-release
repository. Make any missing changes to the spec ofweb
orworker
depending on if the release contains any changes that adds or modifies any flags.concourse/concourse
branches)Create the release branch on
concourse/concourse-bosh-deployment
repository.Create the release branch on
concourse/concourse-chart
repository from thedev
branch. Make any missing changes tovalues.yaml
ortemplates/web-deployment.yaml
for changes to flags on web ortemplates/worker-deployment.yaml
for changes to flags on the worker.Add your release pipeline to the
reconfigure-pipeline
Go through all the
needs-documentation
PRs in the release page for your milestonehttps://project.concourse-ci.org/releases/concourse?milestone=v<M.m.p>
and make sure that everything has proper documentation withinconcourse/docs
(if needed). You can organize which PRs by clicking on the button to add whichever label best fits that PR.concourse/docs
, add arelease/documented
labelconcourse/docs
(or delegate) then add arelease/documented
label after finished. E.g. the addition of a new step type ( set_pipeline step).release/undocumented
label. E.g. an experimental feature.release/no-impact
label. E.g. refactors.Once the all source code changes are finalized, Concourse RC version should be deployed to CI
If you are doing a major release (or a release that involves a risky large feature), consider creating a drills environment for some stress testing to ensure that the release does not involve any performance regressions.
Once the final commit has made it through the pipeline, the
create-draft-release
job can be triggered. This job will create a draft release within the concourse GitHub release page where you can make any final adjustments or arrangements to the generated release notes. PLEASE NOTE that any manual changes made on the draft release WILL BE OVERWRITTEN if you retrigger thecreate-draft-release
job. Please be sure to only make manual edits AFTER you are sure this is the final run of the job.Release Note
header in the PR. After you have made your edits within the PR, you can rerun thecreate-draft-release
job in order to regenerate a new release note.Once everything is ready, the
shipit
job can be triggered. Thepublish-binaries
job will convert your draft release into a final release including the body of your draft release (which will persist any changes you made to the draft release body). Subsequently, the promote concourse job will run automatically. Thepublish-docs
job runs automatically.The helm-chart pipeline is used to bump & then publish the chart.
merge-dev-into-master
job | I believe this job no longer exists and we must manually do this ourselves, probably to fix any conflicts?concourse-app-bump
job (bumps the app version and image to point to the latest release)publish-chart-{major|minor|patch}
job, depending on what has changed in the chartCHANGELOG.md
in the concourse-chart repoThe text was updated successfully, but these errors were encountered: