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

docs: what the CI does #3599

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open

docs: what the CI does #3599

wants to merge 2 commits into from

Conversation

v1v
Copy link
Member

@v1v v1v commented Aug 31, 2023

A brief summary about some of the bits and pieces the CI/CD using GitHub actions do.

This will help us to move the centralised docs regarding the CI that we store in a private location.

Checklist

  • Implement code
  • Add tests
  • Update TypeScript typings
  • Update documentation
  • Add CHANGELOG.asciidoc entry
  • Commit message follows commit guidelines

@v1v v1v added the docs label Aug 31, 2023
@v1v v1v requested review from a team August 31, 2023 14:27
@v1v v1v self-assigned this Aug 31, 2023
@github-actions github-actions bot added the agent-nodejs Make available for APM Agents project planning. label Aug 31, 2023
@trentm
Copy link
Member

trentm commented Sep 5, 2023

Please do NOT merge this yet. I have some feedback to give and we are trying to coordinate the "main" and "3.x" branches for a new 4.0.0 release soon. Thanks.


Node.js agent supports compatibility to different Node.js versions and frameworks, those are defined in:

* TAV [frameworks](.ci/tav.json) for all the commits. **NOTE**: on PRs is a dynamic choice based on the changeset or the GitHub comment.
Copy link
Member

Choose a reason for hiding this comment

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

Could you please add some explanation what TAV means? Is it an abbreviation?


* Linting
* Test
* TAV
Copy link
Member Author

Choose a reason for hiding this comment

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

Suggested change
* TAV
* TAV, (knowing as Test-All-Versions)

Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
* TAV
* Test-All-Versions (TAV)

Copy link
Member

Choose a reason for hiding this comment

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

Before I give feedback on the content here, the https://github.com/elastic/apm-agent-nodejs/blob/main/TESTING.md file documents most of this.

Is there a strong desire to have this file? Who is the audience?

(TESTING.md currently doesn't discuss snapshot.yml, opentelemetry.yml, and microbenchmark.yml, but I could easily do so if that would mean we could avoid this file. I'd like to avoid having duplicate docs, unless there is a particular need for a different audience.)

Copy link
Member Author

Choose a reason for hiding this comment

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

Before I give feedback on the content here, the https://github.com/elastic/apm-agent-nodejs/blob/main/TESTING.md file documents most of this.

neat!

Is there a strong desire to have this file? Who is the audience?

A similar file has been created in the other APM Agents, this could help to anyone regardless of the APM agent team. Do you think this file could exist with a redirect to the TESTING.md?

I could easily do so if that would mean we could avoid this file

Great, that's a good plan


### Release process

This process has been fully automated and it gets triggered when a tag release has been created.
Copy link
Member

Choose a reason for hiding this comment

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

is it really fully automated? I think there are some manual steps needed before the tagging. E.g. #3613

Copy link
Member Author

Choose a reason for hiding this comment

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

The release is tag based driven, so as soon as the tag is created then it produces the bundles, publish and create the release. Probably I might need to change the words to say it tag release based and the release is automated once the tag is created.

Copy link
Member

@reakaleek reakaleek Sep 13, 2023

Choose a reason for hiding this comment

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

I understand that the publishing/deplyoing to NPM, elastic.docker.co and AWS is fully automated.

However, the whole Release Process starts with some changes like incrementing the version in package.json which is currently done through PRs before the commit is tagged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
agent-nodejs Make available for APM Agents project planning. docs
Projects
Status: In Progress
Development

Successfully merging this pull request may close these issues.

4 participants