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

⚠️ CONFLICT! Lineage pull request for: skeleton #123

Merged
merged 77 commits into from
Feb 15, 2023
Merged

Conversation

cisagovbot
Copy link

@cisagovbot cisagovbot commented Jan 7, 2023

Lineage Pull Request: CONFLICT

Lineage has created this pull request to incorporate new changes found in an
upstream repository:

Upstream repository: https://github.com/cisagov/skeleton-python-library.git
Remote branch: HEAD

Check the changes in this pull request to ensure they won't cause issues with
your project.

The lineage/skeleton branch has one or more unresolved merge conflicts
that you must resolve before merging this pull request!

How to resolve the conflicts

  1. Take ownership of this pull request by removing any other assignees.

  2. Clone the repository locally, and reapply the merge:

    git clone git@github.com:cisagov/gophish-tools.git gophish-tools
    cd gophish-tools
    git remote add skeleton https://github.com/cisagov/skeleton-python-library.git
    git remote set-url --push skeleton no_push
    git switch develop
    git checkout -b lineage/skeleton --track origin/develop
    git pull skeleton HEAD
    git status
  3. Review the changes displayed by the status command. Fix any conflicts and
    possibly incorrect auto-merges.

  4. After resolving each of the conflicts, add your changes to the
    branch, commit, and push your changes:

    git add README.md bump_version.sh src/templates/_version.py 
    git commit
    git push --force --set-upstream origin lineage/skeleton

    Note that you may append to the default merge commit message
    that git creates for you, but please do not delete the existing
    content
    . It provides useful information about the merge that is
    being performed.

  5. Wait for all the automated tests to pass.

  6. Check the "Everything is cool" checkbox below:

    • ✌️ The conflicts in this pull request have been resolved.
  7. Mark this draft pull request "Ready for review".


Note: You are seeing this because one of this repository's maintainers has
configured Lineage to open pull requests.

For more information:

🛠 Lineage configurations for this project are stored in .github/lineage.yml

📚 Read more about Lineage

mcdonnnj and others added 30 commits May 27, 2022 18:04
Additionally as of v3.1.0 of actions/setup-go there is a go-version
output value to retrieve the version of Go installed by the Action.
This allows us to remove the step to manually retrieve this information
from the Go executable.
Go 1.16 is no longer supported as of the release of 1.18 so it makes
sense to update to the latest version available.
Go 1.19 was released while this branch was in the wings and it makes
sense to bump to the latest Go release.
Update Go installation in the `build.yml` workflow
Bumps [hashicorp/setup-terraform](https://github.com/hashicorp/setup-terraform) from 1 to 2.
- [Release notes](https://github.com/hashicorp/setup-terraform/releases)
- [Changelog](https://github.com/hashicorp/setup-terraform/blob/main/CHANGELOG.md)
- [Commits](hashicorp/setup-terraform@v1...v2)

---
updated-dependencies:
- dependency-name: hashicorp/setup-terraform
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
…orp/setup-terraform-2

Bump hashicorp/setup-terraform from 1 to 2
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
…s/setup-python-4

Bump actions/setup-python from 3 to 4
Add a comment that states that the commented out ignore directives are
managed by cisagov/skeleton-generic.
This adds the other versioned Actions that should be managed by
cisagov/skeleton-generic to the list of commented out dependencies to
ignore.
…nores

Update Dependabot ignore directives
GitHub has deprecated the set-output command per:
https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/

This updates the GitHub Actions workflow to use the newly preferred
method to set the output for a job's step.
Remove usage of `set-output` from our GitHub Actions workflow
Increase the line length maximum from the default of 80 to 88. This 10%
increase mirrors the line length allowed in other linter configurations
such as black.
…-length_rules

Update the `line-length` configuration for `yamllint`
Per PyCQA/flake8#1290 this hook moved from GitLab to GitHub. The
version we use is bumped to the latest tag on GitHub as well.
Update the `flake8` pre-commit hook configuration
Update pre-commit hooks using `pre-commit autoupdate`. The `ansible-lint` hook
is intentionally held back due to issues with upgrading to v6.
This configuration file stores information about the labels expected in
this repository.
This adds a workflow to ensure that the repository labels are updated
to reflect changes to the label configuration file .github/labels.yml.
Update the configuration for repository labels to remove the leading
`#` from color values. With a `#` leading the values they are seen as
invalid by the GitHub API.
There was a missing empty line in the `.yamllint` file between two rule
definitions.
There is no Python 3.6 on Ubuntu 22.04 release available from
actions/python-versions. Since Ubuntu 22.04 is what is being used for
the `ubuntu-latest` tag we need to pin Python 3.6 testing to use the
old `ubuntu-20.04` tag.
mcdonnnj and others added 4 commits February 8, 2023 11:16
Add `name` keys to the `test`, `build`, and `test-build` jobs that are
both more descriptive and include the Python version from the job's
matrix. This will produce consistent and more helpful job names in the
GitHub Actions log in the GitHub web UI.
…s_using_matrix_strategy

Improve job names for the `build` workflow in GitHub Actions
…/skeleton

# Conflicts:
#	.github/workflows/build.yml
@dav3r dav3r requested a review from jsf9k February 8, 2023 20:27
Copy link
Member

@jsf9k jsf9k left a comment

Choose a reason for hiding this comment

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

Approval intensifies!!!

tests/test_tools.py Show resolved Hide resolved
@dav3r dav3r requested a review from mcdonnnj February 10, 2023 20:53
They are equivalent, but urllib3 can be type-checked.  See #123 (comment) for more context.

Co-authored-by: Nicholas McDonnell <50747025+mcdonnnj@users.noreply.github.com>
@dav3r dav3r requested review from jsf9k and mcdonnnj February 14, 2023 15:52
Copy link
Member

@mcdonnnj mcdonnnj left a comment

Choose a reason for hiding this comment

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

LGTM ✔ Reminder to cut a new tag (and optionally release).

@jsf9k
Copy link
Member

jsf9k commented Feb 14, 2023

LGTM heavy_check_mark Reminder to cut a new tag (and optionally release).

With things the way they stand now, I really think we should be creating a release and letting that in turn create the tag. In the future I'd like to see releases automated, but right now they are not, and creating the release provides a bit more context as to what the tag means.

I humbly reference cisagov/.github#47, which I know @mcdonnnj disagrees with because the eventual solution is to automate the releases. I feel like we could adopt this as a temporary measure, and make the appropriate changes when we have the full automation in place. Why let the promise of future perfection rob us of improvements we can make today?

@dav3r
Copy link
Member

dav3r commented Feb 14, 2023

LGTM heavy_check_mark Reminder to cut a new tag (and optionally release).

With things the way they stand now, I really think we should be creating a release and letting that in turn create the tag. In the future I'd like to see releases automated, but right now they are not, and creating the release provides a bit more context as to what the tag means.

I humbly reference cisagov/.github#47, which I know @mcdonnnj disagrees with because the eventual solution is to automate the releases. I feel like we could adopt this as a temporary measure, and make the appropriate changes when we have the full automation in place. Why let the promise of future perfection rob us of improvements we can make today?

I'm with @jsf9k on this. I think this is a worthy step towards our eventual goal. @mcdonnnj, are you good with this for now until we can automate it?

Copy link
Member

@jsf9k jsf9k left a comment

Choose a reason for hiding this comment

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

Approval intensifies even further!!!

@mcdonnnj
Copy link
Member

LGTM heavy_check_mark Reminder to cut a new tag (and optionally release).

With things the way they stand now, I really think we should be creating a release and letting that in turn create the tag. In the future I'd like to see releases automated, but right now they are not, and creating the release provides a bit more context as to what the tag means.
I humbly reference cisagov/.github#47, which I know @mcdonnnj disagrees with because the eventual solution is to automate the releases. I feel like we could adopt this as a temporary measure, and make the appropriate changes when we have the full automation in place. Why let the promise of future perfection rob us of improvements we can make today?

I'm with @jsf9k on this. I think this is a worthy step towards our eventual goal. @mcdonnnj, are you good with this for now until we can automate it?

I mean for me the manual process is semantics. Either you push a tag and cut a release or you create a release and manually enter the version tag. Some of our projects have no releases and only tags so I was just trying to make sure we hit the bare minimum of pushing a tag.

@jsf9k
Copy link
Member

jsf9k commented Feb 14, 2023

I was just trying to make sure we hit the bare minimum of pushing a tag

I think we can make the bare minimum creating a release and using the autogenerated release notes. This provides more context than simply creating a tag.

@mcdonnnj
Copy link
Member

I was just trying to make sure we hit the bare minimum of pushing a tag

I think we can make the bare minimum creating a release and using the autogenerated release notes. This provides more context than simply creating a tag.

My point is that the only projects who care about the release and prerelease events right now are Packer projects. Docker projects specifically care about tag pushes and everything else doesn't care about either. If there are no in-between pull requests then auto-generated release notes are an empty release with a link to compare two tags. I suppose it is better than nothing but only by the barest measure. I am personally more concerned with a tag landing in the repository than a release right now because we have not been consistent about doing even that and with a helper script available it is a meager amount of work.

@jsf9k
Copy link
Member

jsf9k commented Feb 14, 2023

My point is that the only projects who care about the release and prerelease events right now are Packer projects. Docker projects specifically care about tag pushes and everything else doesn't care about either. If there are no in-between pull requests then auto-generated release notes are an empty release with a link to compare two tags. I suppose it is better than nothing but only by the barest measure. I am personally more concerned with a tag landing in the repository than a release right now because we have not been consistent about doing even that and with a helper script available it is a meager amount of work.

There should be at least one PR (the one that contains the version bump) that will be listed in the release notes. That is helpful information when something breaks and we are wondering what changed in v1.3.5 vs v1.3.6. I fail to see how this is not an improvement over bare tags.

And yes, we should remind each other about creating tags. I'm just suggesting that we create said tags via a release so we have that modicum of context provided by the autogenerated release notes.

More to the point, from your comments it is unclear to me if you are still against cisagov/.github#47 and removing the manual tagging scripts from the skeletons where they currently reside. We can always revert that change later when/if we have some automation scheme in place that requires us to manually generate tags.

@mcdonnnj
Copy link
Member

My point is that the only projects who care about the release and prerelease events right now are Packer projects. Docker projects specifically care about tag pushes and everything else doesn't care about either. If there are no in-between pull requests then auto-generated release notes are an empty release with a link to compare two tags. I suppose it is better than nothing but only by the barest measure. I am personally more concerned with a tag landing in the repository than a release right now because we have not been consistent about doing even that and with a helper script available it is a meager amount of work.

There should be at least one PR (the one that contains the version bump) that will be listed in the release notes. That is helpful information when something breaks and we are wondering what changed in v1.3.5 vs v1.3.6. I fail to see how this is not an improvement over bare tags.

And yes, we should remind each other about creating tags. I'm just suggesting that we create said tags via a release so we have that modicum of context provided by the autogenerated release notes.

More to the point, from your comments it is unclear to me if you are still against cisagov/.github#47 and removing the manual tagging scripts from the skeletons where they currently reside. We can always revert that change later when/if we have some automation scheme in place that requires us to manually generate tags.

Just to be clear I am not opposing creating tags through releases. I just wanted to clarify that I only mentioned tagging as a minimum bar that is a minimal amount of work that we have not been doing.

Yes I am still currently against removing the tagging script as leaving it harms nothing even if we adopt a different process in the interim. The tagging script has been less annoying to use than the GitHub web UI when I have had to create missing tags in some projects so that there is continuity in tags/releases which is part of why I don't really want to see it removed right now. Also if you are cutting prereleases before a PR has been created (for testing as an example) then there will not be populated auto-generated notes.

@jsf9k
Copy link
Member

jsf9k commented Feb 14, 2023

Yes I am still currently against removing the tagging script as leaving it harms nothing even if we adopt a different process in the interim. The tagging script has been less annoying to use than the GitHub web UI when I have had to create missing tags in some projects so that there is continuity in tags/releases which is part of why I don't really want to see it removed right now.

OK, so are you OK with merging cisagov/.github#47 and not removing the manual tagging scripts from the skeletons where they currently reside?

@jsf9k
Copy link
Member

jsf9k commented Feb 14, 2023

Also if you are cutting prereleases before a PR has been created (for testing as an example) then there will not be populated auto-generated notes.

First I would argue that you probably shouldn't create prereleases without creating a PR, but I don't want to get derailed by opening another can of worms.

Second, even if you create a PR the autogenerated release notes for a prerelease are indeed blank. In that case I have been including the line for the PR that would be added after the PR is merged, since those changes are in the prerelease. But even if you don't do that and go with the blank prerelease notes, your eventual release will nonetheless have non-empty and useful release notes. This is the advantage.

Are you OK with approving cisagov/.github#47 and not removing the manual tagging scripts from the skeletons where they currently reside?

@dav3r dav3r merged commit d859c2b into develop Feb 15, 2023
@dav3r dav3r deleted the lineage/skeleton branch February 15, 2023 19:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
upstream update This issue or pull request pulls in upstream updates
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants