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

Document post-host process #6699

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

NotMyFault
Copy link
Member

GitHub has changed a few settings for forks, therefore not all settings and tools are automatically available to hosted plugins.

The change proposed ensures, people are aware of what they can enable to spend less time on dependency updates e.g.

@NotMyFault NotMyFault requested a review from a team as a code owner September 22, 2023 22:18
@probot-autolabeler probot-autolabeler bot added the documentation Jenkins documentation, including user and developer docs, solution pages, etc. label Sep 22, 2023
The script makes use of `gh`, you may need to install and link:[authenticate](https://cli.github.com/manual/gh_auth_login) first, if you haven't already.

```sh
https://gist.github.com/NotMyFault/b036718b73f1ad2a96faca315fc8ca68/raw
Copy link
Member Author

Choose a reason for hiding this comment

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

An exhaustive list of labels used for release-drafter https://github.com/jenkinsci/.github/blob/master/.github/release-drafter.yml, with the default colors and descriptions.

Copy link
Contributor

Choose a reason for hiding this comment

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

It seems like you want them to execute a shell command. Doesn't that need to be something like:

Suggested change
https://gist.github.com/NotMyFault/b036718b73f1ad2a96faca315fc8ca68/raw
wget -O labels https://gist.github.com/NotMyFault/b036718b73f1ad2a96faca315fc8ca68/raw
bash labels

Copy link
Member Author

Choose a reason for hiding this comment

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

Thoughts about && bash..., having it as a single command only then 👀

Copy link
Member

Choose a reason for hiding this comment

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

Maybe store this file in RPU repo and link to the raw version instead of a gist in your personal account?

Also, maybe add a mention about reading the content first before blindly executing a content from Internet? (As an awareness precaution/advice)

Copy link
Member

Choose a reason for hiding this comment

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

As there aren't that much lines in this script, I'm wondering if it wouldn't be better to list them in the doc and tell people to execute them themself.

Having them stored in a script in an official repository has the benefit of being a global reference, but it also give the not so good habit of executing a script from Internet.

I suppose it depends on whether this label list change frequently or not.

Copy link
Member Author

Choose a reason for hiding this comment

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

Maybe store this file in RPU repo and link to the raw version instead of a gist in your personal account?

Works either way. I thought of linking from the RPU to this part, but we can inline it for sure.

I suppose it depends on whether this label list change frequently or not.

I don't think we have ever changed them for the release-drafter/cd action. I'm mostly using it when modernizing plugins because creating labels, with colors and descriptions always takes a good moment.

Copy link
Contributor

@MarkEWaite MarkEWaite left a comment

Choose a reason for hiding this comment

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

Approved with an optional comment that the script instructions may need more details.

I ran the downloaded script on apache-httpcomponents-client-4-api-plugin successfully

The script makes use of `gh`, you may need to install and link:[authenticate](https://cli.github.com/manual/gh_auth_login) first, if you haven't already.

```sh
https://gist.github.com/NotMyFault/b036718b73f1ad2a96faca315fc8ca68/raw
Copy link
Contributor

Choose a reason for hiding this comment

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

It seems like you want them to execute a shell command. Doesn't that need to be something like:

Suggested change
https://gist.github.com/NotMyFault/b036718b73f1ad2a96faca315fc8ca68/raw
wget -O labels https://gist.github.com/NotMyFault/b036718b73f1ad2a96faca315fc8ca68/raw
bash labels

== Categorize the Plugin
=== Automate your GitHub repository

==== Activate GitHub actions
Copy link
Member

Choose a reason for hiding this comment

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

change the hosting bot to do this?

Copy link
Member Author

Choose a reason for hiding this comment

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

Can you activate actions via the API? I don't mean in settings, but clicking the green surface "I understand my workflows" 🤔

Copy link
Member

Choose a reason for hiding this comment

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

unsure

To activate the workflow, you need to go to the `Actions` tab of your GitHub repository and click on the `I understand my workflows, go ahead and enable them` button.
Follow the next section to create the necessary labels for your pull requests.

==== Create the default labels
Copy link
Member

Choose a reason for hiding this comment

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

not required as per jenkins-infra/helpdesk#3694 (comment)


The script itself is probably useful for existing repositories


== Request Upload Permissions
=== Request Upload Permissions
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
=== Request Upload Permissions
=== Request upload permissions

adjusting to sentence case so that it is aligned with the other section headers

Copy link
Contributor

@basil basil left a comment

Choose a reason for hiding this comment

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

Pending jenkins-infra/repository-permissions-updater#3573 should we add a section about setting the GitHub homepage to the plugin's page on https://plugins.jenkins.io?

== Categorize the Plugin
=== Automate your GitHub repository

==== Activate GitHub actions
Copy link
Contributor

Choose a reason for hiding this comment

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

Based on this page, it appears that GitHub Actions is the name of a product (i.e., a proper noun) and should therefore be capitalized.


During the hosting process, you have included a shared workflow to generate changelogs automatically. Publishing changelogs as GitHub release notes is a good practice to keep your users informed about the changes in your plugin.

To activate the workflow, you need to go to the `Actions` tab of your GitHub repository and click on the `I understand my workflows, go ahead and enable them` button.
Copy link
Contributor

Choose a reason for hiding this comment

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

Here and elsewhere there are usages of backticks for things other than code. Backticks should only be used for inline code.


Use the following script to create the default labels for your GitHub repository, used to categorize issues and pull requests and generate changelogs automatically:

The script makes use of `gh`, you may need to install and link:[authenticate](https://cli.github.com/manual/gh_auth_login) first, if you haven't already.
Copy link
Contributor

Choose a reason for hiding this comment

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

The script makes use […], you may need to install and authenticate […]

These are two independent clauses, each with a subject and verb, without a coordinating conjunction; i.e., a run-on sentence. Suggest using a semicolon instead of a comma or adding a coordinating conjunction.


NOTE: Bear in mind, that the script is intended to overwrite existing labels, to make sure you don't have any outdated labels with different descriptions or colors.

==== Activate dependabot
Copy link
Contributor

Choose a reason for hiding this comment

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

Based on this page, it appears that Dependabot is the name of a product (i.e., a proper noun) and should therefore be capitalized.


To activate dependabot, you need to go to the `Settings` tab, followed by `Code security and analysis` tab of your GitHub repository and click on the `Enable` button next to `Dependabot version updates` and `Dependency graph`.

Alternatively, you can use link:[renovate](https://www.mend.io/renovate/) too, which is used by plugin maintainers, if you prefer.
Copy link
Contributor

Choose a reason for hiding this comment

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

Based on this page, it appears that Renovate is the name of a product (i.e., a proper noun) and should therefore be capitalized.


Alternatively, you can use link:[renovate](https://www.mend.io/renovate/) too, which is used by plugin maintainers, if you prefer.

=== Categorize the Plugin
Copy link
Contributor

Choose a reason for hiding this comment

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

The headings elsewhere on this page use sentence case rather than title case, as noted previously by Kevin, so should this heading do the same?


Dependabot is a GitHub feature that automatically creates pull requests to update dependencies in your repository. It is a good practice to keep your dependencies up to date, as it helps to avoid security vulnerabilities and compatibility issues.

To activate dependabot, you need to go to the `Settings` tab, followed by `Code security and analysis` tab of your GitHub repository and click on the `Enable` button next to `Dependabot version updates` and `Dependency graph`.
Copy link
Contributor

Choose a reason for hiding this comment

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Jenkins documentation, including user and developer docs, solution pages, etc.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants