Skip to content
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

Upgrade Jenkins X repositories to go 1.18 [Starts July 18] #8283

Closed
27 tasks done
ankitm123 opened this issue Jul 5, 2022 · 26 comments
Closed
27 tasks done

Upgrade Jenkins X repositories to go 1.18 [Starts July 18] #8283

ankitm123 opened this issue Jul 5, 2022 · 26 comments
Labels
area/go area/plumbing good first issue Good for newcomers help wanted Extra attention is needed priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release.

Comments

@ankitm123
Copy link
Member

ankitm123 commented Jul 5, 2022

Golang supports only 2 major releases: https://endoflife.date/go
Go 1.19 is expected to be out in August 2022.
We should start the upgrade process to go 1.18, before go 1.17 becomes unsupported (expected in August 2022).

Follow this guide for information on how to upgrade: https://jenkins-x.io/community/maintainer_guide/go-upgrades/

Before upgrading , we need to upgrade the version of golang in the catalog repository:
example (there are other files as well): https://github.com/jenkins-x/jx3-pipeline-catalog/blob/0f0f956d38ffe383ba38d93c1cfe7160a3bec93a/tasks/go/pullrequest.yaml#L37

This is the tentative list of repositories (list will be updated if we find any missing repositories) that we should upgrade:

In the list, there are some packages which need multiple packages updated before we update them, for example: before upgrading jx-api we should upgrade jx-logging.

NOTE: it's fine if you dont follow the order, the order is only there to limit the number of PRs we open as part of an upgrade effort

We will this issue to keep track of which repositories have been upgraded.
If you are interested in contributing, please comment

I want to upgrade <repo-name>

When opening a PR in these repos to upgrade the go version, remember to include

related to #<issue-number>

Dont use fixes as that will close this issue once ur PR is merged.
Once your PR is merged, comment in this issue:

<reponame> has been upgraded to 1.18

If you encounter any issues when upgrading, please make a note of that issue and how you fixed in this PR, so that is helps other contributors. Remember to comment back the issue and fix in this PR, so others can see it.

There are a few repositories that need to be upgraded to 1.17, before we start working on this issue. Those are being tracked here: #8279

We will start working on this issue from July 18.

@ankitm123 ankitm123 added help wanted Extra attention is needed good first issue Good for newcomers priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. area/plumbing area/go labels Jul 5, 2022
@ankitm123 ankitm123 added this to To do in Public roadmap Jul 5, 2022
@ankitm123 ankitm123 changed the title Upgrade Jenkins X repositories to go 1.18 Upgrade Jenkins X repositories to go 1.18 [Starts July 18] Jul 5, 2022
@sshiv5768
Copy link

sshiv5768 commented Jul 6, 2022

@ankitm123 I want to upgrade lighthouse or jx.

@sshiv5768
Copy link

When to start working on this?

@ankitm123
Copy link
Member Author

When to start working on this?

July 18, I need to update the order in which we can upgrade, and get few repos upgraded to 1.17 before that.

@rajatgupta24
Copy link
Member

Hello @ankitm123, I want to upgrade the go-scm.

@sshiv5768
Copy link

sshiv5768 commented Jul 6, 2022

Which are the files that needs to be changed in lighthouse?

@ankitm123
Copy link
Member Author

I will update the jx documentation (with files and steps) and link it to this issue.
it's going to be go.mod file.

@Aju100
Copy link

Aju100 commented Jul 18, 2022

Hi @rajatgupta24 I want to upgrade jx-admin and jx-loggers.

@ankitm123
Copy link
Member Author

https://jenkins-x.io/community/maintainer_guide/go-upgrades/ -> This has some information around upgrading, I will update the go version in the catalog file: https://github.com/jenkins-x/jx3-pipeline-catalog/blob/0a52092fffa636bd7e6da1dbcb0aef38d2b314b9/tasks/go/pullrequest.yaml#L37 (This is one of the files)

@sshiv5768
Copy link

@ankitm123 I have created an issue(#8307) in jx repo. Is it good to go for upgrading process?

@joker00777
Copy link

HI @ankitm123 I want to upgrade jx-gitops.

@ankitm123
Copy link
Member Author

Is it good to go for upgrading process?

@sshiv5768 Yes, please go ahead.

@ankitm123
Copy link
Member Author

I have updated the page with the order: https://jenkins-x.io/community/maintainer_guide/go-upgrades/. Hopefully this helps and let me know if anything is missing!

@ankitm123
Copy link
Member Author

ankitm123 commented Jul 24, 2022

I want to upgrade logrus-stackdriver-formatter.

rajatgupta24 added a commit to rajatgupta24/jx-git-operator that referenced this issue Sep 28, 2022
This PR also updates the `lint` phony in Makefile

related to: jenkins-x/jx#8283

- [x] Change the version in `go.mod` file.
- [x] Run `go mod tidy` and ensure that it does not error out.
- [x] Change `GO_VERSION` in `makefile` to the version you are upgrading.
- [x] Check if there are any references to an older version and replace those.
- [x] Verify that
  - [x] The build works by running `make build`.
  - [x] Tests are working, by running `make test`.
  - [x] Linting checks are working by running `make lint`.
@rajatgupta24
Copy link
Member

I want to upgrade jx-git-operator.

rajatgupta24 added a commit to rajatgupta24/jx-git-operator that referenced this issue Sep 28, 2022
This PR also updates the `lint` phony in Makefile

related to: jenkins-x/jx#8283

- [x] Change the version in `go.mod` file.
- [x] Run `go mod tidy` and ensure that it does not error out.
- [x] Change `GO_VERSION` in `makefile` to the version you are upgrading.
- [x] Check if there are any references to an older version and replace those.
- [x] Verify that
  - [x] The build works by running `make build`.
  - [x] Tests are working, by running `make test`.
  - [x] Linting checks are working by running `make lint`.
@rajatgupta24
Copy link
Member

Keep in mind to upgrade the k8s.io version to v0.22.15.

@ankitm123
Copy link
Member Author

I want to upgrade jx-build-controller.

rajatgupta24 added a commit to rajatgupta24/jx-git-operator that referenced this issue Sep 28, 2022
This PR also updates the `lint` phony in Makefile
Also updates the version of `k8s.io` version to `v0.22.15`

related to: jenkins-x/jx#8283

- [x] Change the version in `go.mod` file.
- [x] Run `go mod tidy` and ensure that it does not error out.
- [x] Change `GO_VERSION` in `makefile` to the version you are upgrading.
- [x] Check if there are any references to an older version and replace those.
- [x] Verify that
  - [x] The build works by running `make build`.
  - [x] Tests are working, by running `make test`.
  - [x] Linting checks are working by running `make lint`.
@aahmed7
Copy link

aahmed7 commented Sep 28, 2022

Hi @ankitm123, I want to upgrade jx-verify

@ankitm123
Copy link
Member Author

I want to update jx-updatebot

rajatgupta24 added a commit to rajatgupta24/jx-git-operator that referenced this issue Sep 29, 2022
This PR also updates the `lint` phony in Makefile
Also updates the version of `k8s.io` version to `v0.22.15`

related to: jenkins-x/jx#8283

- [x] Change the version in `go.mod` file.
- [x] Run `go mod tidy` and ensure that it does not error out.
- [x] Change `GO_VERSION` in `makefile` to the version you are upgrading.
- [x] Check if there are any references to an older version and replace those.
- [x] Verify that
  - [x] The build works by running `make build`.
  - [x] Tests are working, by running `make test`.
  - [x] Linting checks are working by running `make lint`.
@ankitm123
Copy link
Member Author

I want to update jx-slack

@ankitm123
Copy link
Member Author

I want to update jx-test

@ankitm123
Copy link
Member Author

This is complete, thanks everyone!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/go area/plumbing good first issue Good for newcomers help wanted Extra attention is needed priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release.
Projects
Development

No branches or pull requests

6 participants