apache / apache/lucene

buildAndPushRelease.py should ensure you have no unpushed git changes [LUCENE-7021]

Open
#8,078 3 comments 0 reactions 0 assignees View on GitHub
legacy-jira-priority:Major type:bug
Dominant language
Java
Stars
3.6k
Forks
1.4k
Avg merge
2d 11h
Merged PRs (30d)
88

Description

I'm just a git newbie so I'm not sure how to add this to our release scripts, but I think it's quite important that we don't up and release something the world containing changes I had only committed locally and then failed to push. What if I then remove that directory after we've released?

We should also fix the release smoke tester to confirm the git revision is known ... I'll open a separate issue for that.

I'm trying to be super careful not to do this for 5.5.0, but really the release script should catch this.

I did a bit of googling and found the magic command `git cherry -v origin/branch_5_5` seemed to work (at least, it showed my one local commit), but e.g. "origin" is just a label I use (others use "upstream"), etc., so I'm not sure how to reliably do this... maybe we have to run `git remote -v` and figure out what label use use for the "official" (wip) Apache git instance?

---
Migrated from [LUCENE-7021](https://issues.apache.org/jira/browse/LUCENE-7021) by Michael McCandless (@mikemccand)

Contributor guide

Open the contributing guide

Research direction

Start by reading buildAndPushRelease.py and the surrounding release scripts, then inspect how git cherry and git remote -v behave with different remote labels. Done means the release process reliably detects unpushed local changes before publishing, while the separate release smoke-tester request remains out of scope.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, python
Domain
build-system, release
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.