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(tracer): split and lint code snippets #1260

Merged

Conversation

heitorlessa
Copy link
Contributor

@heitorlessa heitorlessa commented Jun 23, 2022

Issue number: #1009

Summary

Changes

Please provide a summary of what's being changed

This PR splits code snippets into a top-level examples folder. Formatting and linting (make lint) were adjusted to include examples folder. We also introduce cfn-lint within pre-commit hooks to selectively lint changed infra files within examples folder.

The only downside is that documentation needs to be rebuilt/rerun when example files are changed, as live change won't reflect files that are included.

Convention

We'll keep all examples under examples folder. Each feature will have its own source code that match what's in the documentation, followed by one or more infrastructure as code customers could use in the future.

Example for Tracer

examples
└── tracer
    ├── cdk
    │   └── all_cdk_project_files, dependencies, etc.
    ├── sam
    │   └── template.yaml
    ├── src
    │   └── capture_lambda_handler.py
    └── terraform

Caveat

We need to ensure Lambda Powertools dependency/layer is used. In the case of Layers, we will need to upgrade the Layer version within examples as part of each release - @am29d your input is crucial here on the best way forward. Until Alex completes his Layer pipeline refactoring, we can build a workflow action to find/replace Layer ARN Version.

Another caveat is that cfn-lint dropped support for 3.6. We're using an official cfn-lint GitHub Actions as a workaround.

User experience

Please share what the user experience looks like before and after this change

Example of adding an invalid SAM template for a code snippet

image

Code quality example using our set of rules

image

Checklist

If your change doesn't seem to apply, please leave them unchecked.

Is this a breaking change?

RFC issue number:

Checklist:

  • Migration process documented
  • Implement warnings (if it can live side by side)

Acknowledgment

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.


View rendered docs/core/tracer.md

@boring-cyborg boring-cyborg bot added documentation Improvements or additions to documentation github-actions Pull requests that update Github_actions code internal Maintenance changes labels Jun 23, 2022
@pull-request-size pull-request-size bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Jun 23, 2022
@heitorlessa heitorlessa requested review from am29d, mploski and sthulb June 23, 2022 09:21
@heitorlessa
Copy link
Contributor Author

feedback received from @sthulb ==> Approach B. Tested with SAM and SAM CLI for parent folder (..src/) and worked just fine. I'll carry on in an hour or so

@heitorlessa heitorlessa changed the title docs(tracer): snippets split and linting docs(tracer): split and lint code snippets Jun 23, 2022
@heitorlessa heitorlessa merged commit 9eb127a into aws-powertools:develop Jun 23, 2022
@heitorlessa heitorlessa deleted the docs/tracer-code-split branch June 23, 2022 13:48
heitorlessa added a commit to heitorlessa/aws-lambda-powertools-python that referenced this pull request Jun 23, 2022
…tools-python into develop

* 'develop' of https://github.com/awslabs/aws-lambda-powertools-python:
  docs(tracer): split and lint code snippets (aws-powertools#1260)
  fix(ci): quote prBody GH expr on_opened_pr
heitorlessa added a commit to heitorlessa/aws-lambda-powertools-python that referenced this pull request Jun 23, 2022
* develop:
  chore: move to approach B for multiple IaC
  chore: add sam build gitignore
  docs(tracer): split and lint code snippets (aws-powertools#1260)
  fix(ci): quote prBody GH expr on_opened_pr
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation github-actions Pull requests that update Github_actions code internal Maintenance changes size/M Denotes a PR that changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant