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

Site: Troubleshooting/Website publishing improvements in release guide #3517

Closed
wants to merge 2 commits into from

Conversation

libenchao
Copy link
Member

No description provided.

@@ -806,7 +806,7 @@ git clean -xn
./gradlew prepareVote -Prc=0

# Push release candidate to ASF servers
./gradlew prepareVote -Prc=0 -Pasf -Pasf.git.pushRepositoryProvider=GITBOX
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Throws following exception with GITBOX:

> Task :pushRcTag FAILED

Build calcite FAILURE reason:
    Execution failed for task ':pushRcTag':
        Caused by: org.eclipse.jgit.api.errors.TransportException: https://gitbox.apache.org/repos/asf/calcite.git: not authorized
            at org.eclipse.jgit.api.PushCommand.call(PushCommand.java:147)
            at com.github.vlsi.gradle.release.jgit.dsl.GitExtensionsKt.push(GitExtensions.kt:132)
            at com.github.vlsi.gradle.release.GitPushTask$pushTag$1.invoke(GitPushTask.kt:54)
            at com.github.vlsi.gradle.release.GitPushTask$pushTag$1.invoke(GitPushTask.kt:30)
            at com.github.vlsi.gradle.release.DefaultGitTask.jgit(DefaultGitTask.kt:45)
            at com.github.vlsi.gradle.release.GitPushTask.pushTag(GitPushTask.kt:50)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For avatica, I also have -Pasf.git.pushRepositoryProvider=GITBOX in the release script: https://github.com/apache/calcite-avatica/blob/main/docker.sh#L298

I haven't used this recently, so not sure if it still works.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CC @NobiGo @zabetak since you are the latest release managers.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The asf.git.pushRepositoryProvider should be inline with asfGitSourceUsername and asfGitSourcePassword. If you are using GITBOX then you should use the ASF credentials; if you use GITHUB you should use the GitHub credentials. I assume both providers should work fine if the correct credentials are set.

I think there were some misconception that GITHUB was not working in the past (https://issues.apache.org/jira/browse/CALCITE-4856) but I suspect that the underlying reason was the same (mixing ASF vs. GitHub credentials).

If we want to improve something it makes sense to clarify somewhere this story about the different credentials and not just change again the default values.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was following this line to setup the environment:

calcite/site/_docs/howto.md

Lines 686 to 687 in 816edd1

Note: `asfGitSourceUsername` is your GitHub id while `asfGitSourcePassword` is not your GitHub password.
You need to generate it in https://github.com/settings/tokens choosing `Personal access tokens`.

I thought this is the suggested way to interact with Git. (Actually I'm not sure how to setup Gitbox credentials, I guess asfGitSourcePassword is the apache password which is the same with asfNexusPassword and
asfSvnPassword?)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, the Gitbox credentials is the usual username and password combination that is used to access most (if not all) ASF services.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll leave the default as 'GITBOX', and add more comments about it.

Use the [Apache URL shortener](https://s.apache.org) to generate
shortened URLs for the vote proposal and result emails. Examples:
[s.apache.org/calcite-1.2-vote](https://s.apache.org/calcite-1.2-vote) and
[s.apache.org/calcite-1.2-result](https://s.apache.org/calcite-1.2-result).
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems there are no steps need to use this, I propose to remove it to make the document clean.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, Since the release script generates the emails, I think most RMs will just copy that verbatim, so the shortening of links seem redundant.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My understanding is that these steps are for creating mnemonic URLs that people can easily find and refer to it in future. I don't think was ever meant to be used for the voting process it self but for later reference to it if needed. I don't have a strong opinion on keeping or removing them but they do serve a purpose. For instance, typing the following just works and brings me what I need:

Copy link
Member Author

@libenchao libenchao Nov 13, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I also agree that it served for some purpose. The problem now is that it sometimes confuses new RMs (this has happened during 1.35.0 releasing: https://lists.apache.org/thread/nv2xclvgrw84866o0q2ngdx4c2dg6pqq).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the explanation that I gave above clarifies a bit the situation then we could enrich the doc accordingly. If you feel that there might be still confusion then feel free to remove the section altogether.

Copy link

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@libenchao
Copy link
Member Author

@zabetak @F21 I've addressed the comments above (kept the removing the shortening URL section since I think it's not a required step in current release process, removing it would make the document clean and concise), if there is no more remarks, I'll merge it later.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants