Skip to content

Commit 8591f8e

Browse files
committed
docs
1 parent c4ebb60 commit 8591f8e

7 files changed

Lines changed: 336 additions & 51 deletions

File tree

CHANGELOG.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [Unreleased]
9+
10+
### Added
11+
- Initial project structure
12+
- Tutorial generation capabilities
13+
- Content enhancement utilities
14+
- Documentation analysis tools
15+
- Integration with AWS services
16+
17+
### Changed
18+
- N/A
19+
20+
### Fixed
21+
- N/A
22+
23+
## [0.1.0] - 2025-07-16
24+
25+
### Added
26+
- Initial release
27+
- Basic project structure
28+
- Documentation templates
29+
- Example tutorials
30+
31+
[Unreleased]: https://github.com/aws/developer-tutorials/compare/v0.1.0...HEAD
32+
[0.1.0]: https://github.com/aws/developer-tutorials/releases/tag/v0.1.0

CODE_OF_CONDUCT.md

Lines changed: 74 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,74 @@
1-
## Code of Conduct
2-
This project has adopted the [Amazon Open Source Code of Conduct](https://aws.github.io/code-of-conduct).
3-
For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq) or contact
4-
opensource-codeofconduct@amazon.com with any additional questions or comments.
1+
# Developer Tutorials Code of Conduct
2+
3+
## Our Pledge
4+
5+
In the interest of fostering an open and welcoming environment, we as
6+
contributors and maintainers pledge to making participation in our project and
7+
our community a harassment-free experience for everyone, regardless of age, body
8+
size, disability, ethnicity, gender identity and expression, level of experience,
9+
nationality, personal appearance, race, religion, or sexual identity and
10+
orientation.
11+
12+
## Our Standards
13+
14+
Examples of behavior that contributes to creating a positive environment
15+
include:
16+
17+
* Using welcoming and inclusive language
18+
* Being respectful of differing viewpoints and experiences
19+
* Gracefully accepting constructive criticism
20+
* Focusing on what is best for the community
21+
* Showing empathy towards other community members
22+
23+
Examples of unacceptable behavior by participants include:
24+
25+
* The use of sexualized language or imagery and unwelcome sexual attention or
26+
advances
27+
* Trolling, insulting/derogatory comments, and personal or political attacks
28+
* Public or private harassment
29+
* Publishing others' private information, such as a physical or electronic
30+
address, without explicit permission
31+
* Other conduct which could reasonably be considered inappropriate in a
32+
professional setting
33+
34+
## Our Responsibilities
35+
36+
Project maintainers are responsible for clarifying the standards of acceptable
37+
behavior and are expected to take appropriate and fair corrective action in
38+
response to any instances of unacceptable behavior.
39+
40+
Project maintainers have the right and responsibility to remove, edit, or
41+
reject comments, commits, code, wiki edits, issues, and other contributions
42+
that are not aligned to this Code of Conduct, or to ban temporarily or
43+
permanently any contributor for other behaviors that they deem inappropriate,
44+
threatening, offensive, or harmful.
45+
46+
## Scope
47+
48+
This Code of Conduct applies both within project spaces and in public spaces
49+
when an individual is representing the project or its community. Examples of
50+
representing a project or community include using an official project e-mail
51+
address, posting via an official social media account, or acting as an appointed
52+
representative at an online or offline event. Representation of a project may be
53+
further defined and clarified by project maintainers.
54+
55+
## Enforcement
56+
57+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
58+
reported by contacting the project team at developer-tutorials@amazon.com. All
59+
complaints will be reviewed and investigated and will result in a response that
60+
is deemed necessary and appropriate to the circumstances. The project team is
61+
obligated to maintain confidentiality with regard to the reporter of an incident.
62+
Further details of specific enforcement policies may be posted separately.
63+
64+
Project maintainers who do not follow or enforce the Code of Conduct in good
65+
faith may face temporary or permanent repercussions as determined by other
66+
members of the project's leadership.
67+
68+
## Attribution
69+
70+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71+
available at [http://contributor-covenant.org/version/1/4][version]
72+
73+
[homepage]: http://contributor-covenant.org
74+
[version]: http://contributor-covenant.org/version/1/4/

CONTRIBUTING.md

Lines changed: 48 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,70 @@
1-
# Contributing Guidelines
1+
# Contributing to Developer Tutorials
22

3-
Thank you for your interest in contributing to our project. Whether it's a bug report, new feature, correction, or additional
4-
documentation, we greatly value feedback and contributions from our community.
3+
Thank you for your interest in contributing to Developer Tutorials! We greatly value feedback and contributions from our community.
54

6-
Please read through this document before submitting any issues or pull requests to ensure we have all the necessary
7-
information to effectively respond to your bug report or contribution.
5+
## Reporting Issues
86

7+
If you find a bug or have a suggestion for improving the Developer Tutorials, please open an issue in our GitHub repository. When filing an issue, please include:
98

10-
## Reporting Bugs/Feature Requests
9+
- A clear description of the issue or suggestion
10+
- Steps to reproduce the issue
11+
- Expected behavior
12+
- Actual behavior
13+
- Any relevant logs or error messages
14+
- Your environment (OS, Python version, etc.)
1115

12-
We welcome you to use the GitHub issue tracker to report bugs or suggest features.
16+
## Contributing Code
1317

14-
When filing an issue, please check existing open, or recently closed, issues to make sure somebody else hasn't already
15-
reported the issue. Please try to include as much information as you can. Details like these are incredibly useful:
18+
We welcome code contributions through pull requests. Here's how to get started:
1619

17-
* A reproducible test case or series of steps
18-
* The version of our code being used
19-
* Any modifications you've made relevant to the bug
20-
* Anything unusual about your environment or deployment
20+
1. Fork the repository
21+
2. Create a new branch for your feature or bug fix
22+
3. Make your changes
23+
4. Add or update tests as necessary
24+
5. Run the test suite to ensure all tests pass
25+
6. Commit your changes with clear, descriptive commit messages
26+
7. Push your branch to your fork
27+
8. Open a pull request against the main repository
2128

29+
## Development Setup
2230

23-
## Contributing via Pull Requests
24-
Contributions via pull requests are much appreciated. Before sending us a pull request, please ensure that:
31+
To set up your development environment:
2532

26-
1. You are working against the latest source on the *main* branch.
27-
2. You check existing open, and recently merged, pull requests to make sure someone else hasn't addressed the problem already.
28-
3. You open an issue to discuss any significant work - we would hate for your time to be wasted.
33+
```bash
34+
# Clone the repository
35+
git clone https://github.com/aws-samples/sample-developer-tutorials.git
2936

30-
To send us a pull request, please:
37+
# Navigate to the project directory
38+
cd sample-developer-tutorials
39+
```
3140

32-
1. Fork the repository.
33-
2. Modify the source; please focus on the specific change you are contributing. If you also reformat all the code, it will be hard for us to focus on your change.
34-
3. Ensure local tests pass.
35-
4. Commit to your fork using clear commit messages.
36-
5. Send us a pull request, answering any default questions in the pull request interface.
37-
6. Pay attention to any automated CI failures reported in the pull request, and stay involved in the conversation.
41+
## Generating tutorials
3842

39-
GitHub provides additional document on [forking a repository](https://help.github.com/articles/fork-a-repo/) and
40-
[creating a pull request](https://help.github.com/articles/creating-a-pull-request/).
43+
Follow the instructions in [instra/README.md](instra/README.md)
4144

45+
## Testing
4246

43-
## Finding contributions to work on
44-
Looking at the existing issues is a great way to find something to contribute on. As our projects, by default, use the default GitHub issue labels (enhancement/bug/duplicate/help wanted/invalid/question/wontfix), looking at any 'help wanted' issues is a great place to start.
47+
All new scripts and tutorials need to be tested by the author. Attach a log from a successful test run to the pull request.
4548

49+
## Cleanup
4650

47-
## Code of Conduct
48-
This project has adopted the [Amazon Open Source Code of Conduct](https://aws.github.io/code-of-conduct).
49-
For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq) or contact
50-
opensource-codeofconduct@amazon.com with any additional questions or comments.
51+
The tool generates a lot of artifacts including intermediate script revisions that generate errors. Submit a pull request with only the final revision of the script and tutorial. Rename these after the use case follow this convention.
52+
53+
```
54+
├── 001-lightsail-gs
55+
│   ├── README.md
56+
│   ├── lightsail-gs.md
57+
│   └── lightsail-gs.sh
58+
```
5159

60+
## Documentation
5261

53-
## Security issue notifications
54-
If you discover a potential security issue in this project we ask that you notify AWS/Amazon Security via our [vulnerability reporting page](http://aws.amazon.com/security/vulnerability-reporting/). Please do **not** create a public github issue.
62+
Add a readme for your contribution that describes its use case.
63+
64+
## Code of Conduct
5565

66+
This project adheres to the [Code of Conduct](CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code.
5667

57-
## Licensing
68+
## License
5869

59-
See the [LICENSE](LICENSE) file for our project's licensing. We will ask you to confirm the licensing of your contribution.
70+
By contributing to Developer Tutorials, you agree that your contributions will be licensed under the project's [Apache License 2.0](LICENSE).

LICENSE

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
Apache License
32
Version 2.0, January 2004
43
http://www.apache.org/licenses/
@@ -173,3 +172,19 @@
173172
defend, and hold each Contributor harmless for any liability
174173
incurred by, or claims asserted against, such Contributor by reason
175174
of your accepting any such warranty or additional liability.
175+
176+
END OF TERMS AND CONDITIONS
177+
178+
Copyright 2025 Amazon.com, Inc. or its affiliates. All Rights Reserved.
179+
180+
Licensed under the Apache License, Version 2.0 (the "License");
181+
you may not use this file except in compliance with the License.
182+
You may obtain a copy of the License at
183+
184+
http://www.apache.org/licenses/LICENSE-2.0
185+
186+
Unless required by applicable law or agreed to in writing, software
187+
distributed under the License is distributed on an "AS IS" BASIS,
188+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
189+
See the License for the specific language governing permissions and
190+
limitations under the License.

README.md

Lines changed: 94 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,102 @@
1-
## My Project
1+
# AWS Developer Tutorials
22

3-
TODO: Fill this README out!
3+
A collection of AWS CLI scripts and tutorials for common AWS service use cases, designed to help developers quickly get started with AWS services through the command line.
44

5-
Be sure to:
5+
## Overview
66

7-
* Change the title in this README
8-
* Edit your repository description on GitHub
7+
This repository contains AWS CLI scripts and tutorials that demonstrate how to use AWS services through the command line interface. The scripts are designed to be interactive, handle errors, and clean up resources after use. The tutorials provide step-by-step guidance on how to use the scripts and understand the underlying AWS services.
98

10-
## Security
9+
These resources serve three main purposes:
1110

12-
See [CONTRIBUTING](CONTRIBUTING.md#security-issue-notifications) for more information.
11+
1. **Running scripts**: Execute ready-made scripts to quickly set up and explore AWS services
12+
2. **Reading tutorials**: Learn how AWS services work through detailed tutorials
13+
3. **Generating new scripts**: Use Amazon Q Developer CLI to create new scripts for additional use cases
1314

14-
## License
15+
## Repository structure
16+
17+
- `/tuts`: Contains all tutorials and scripts, organized by use case
18+
- `/instra`: Contains instructions for generating new tutorials and scripts
19+
20+
Each tutorial folder follows a naming convention of `XXX-service-usecase` where XXX is a three-digit number, and contains:
21+
22+
- A shell script (`.sh`) that implements the use case
23+
- A tutorial (`.md`) that explains the use case and how to use the script
24+
- Supporting files for documentation and reference
25+
26+
## Running scripts
27+
28+
To run an existing script:
29+
30+
1. Clone this repository or download the specific script you need
31+
2. Make the script executable: `chmod +x script-name.sh`
32+
3. Run the script: `./script-name.sh`
33+
34+
The scripts are interactive and will:
35+
- Prompt for necessary inputs
36+
- Create AWS resources
37+
- Show the results of operations
38+
- Track created resources
39+
- Offer to clean up resources when done
40+
41+
## Reading tutorials
42+
43+
Each script comes with a detailed tutorial that explains:
44+
- The AWS service and use case
45+
- Prerequisites and setup
46+
- Step-by-step walkthrough of the script's operations
47+
- Explanation of key AWS CLI commands and parameters
48+
- Best practices and considerations
49+
50+
To read a tutorial, open the corresponding markdown file in the same folder as the script.
51+
52+
## Generating new scripts
53+
54+
You can use Amazon Q Developer CLI to generate new scripts based on:
55+
56+
1. **Existing scripts**: Use an existing script as a template
57+
2. **Documentation topics**: Generate a script from AWS documentation
1558

16-
This project is licensed under the Apache-2.0 License.
59+
### Using existing scripts as templates
60+
61+
```bash
62+
# Example: Generate a script for IPAM setup using an existing script
63+
q "Generate a script to set up IPAM for my VPC. Use the following script as an example: 009-vpc-ipam-gs.sh"
64+
```
65+
66+
### Generating from documentation
67+
68+
```bash
69+
# Example: Generate a script from AWS Payment Cryptography documentation
70+
q "read the instructions in the ../../instra/tutorial-gen folder and follow them in order, using this topic: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/getting-started.html when instructed to run the script in step 2b, it's ok to actually run the script and create resources. this is part of the process. when you generate the script, be careful to check required options and option names for each command."
71+
```
72+
73+
## Prerequisites
74+
75+
- AWS CLI installed and configured with appropriate credentials
76+
- Bash shell environment
77+
- Appropriate AWS permissions for the services used in each script
78+
79+
## Contributing
80+
81+
We welcome contributions to expand the collection of tutorials and scripts. To contribute:
82+
83+
1. **Create a new folder** in the `/tuts` directory following the naming convention: `XXX-service-usecase`
84+
2. **Follow the tutorial generation instructions** in the `/instra/tutorial-gen` folder
85+
3. **Submit only the final tutorial and script files** after testing and validation
86+
87+
### Folder structure for new contributions
88+
89+
```
90+
/tuts/XXX-service-usecase/
91+
├── XXX-service-usecase-script.sh # The executable script
92+
├── XXX-service-usecase-tutorial.md # The tutorial documentation
93+
└── XXX-service-usecase-README.md # Brief description of the use case
94+
```
95+
96+
## Cleanup
97+
98+
All scripts include resource tracking and cleanup functionality. After provisioning and interacting with resources, the scripts provide a list of resources and ask if you want to clean them up. If a script encounters an issue, it attempts to clean up resources that it created before the error.
99+
100+
## License
17101

102+
This project is licensed under the MIT-0 License. See the LICENSE file for details.

SECURITY.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Security Policy
2+
3+
## Reporting a Vulnerability
4+
5+
If you discover a potential security issue in this project, we ask that you notify AWS Security via our [vulnerability reporting page](https://aws.amazon.com/security/vulnerability-reporting/). Please do **not** create a public GitHub issue.
6+
7+
## Supported Versions
8+
9+
Only the latest version of Developer Tutorials is currently being supported with security updates.
10+
11+
| Version | Supported |
12+
| ------- | ------------------ |
13+
| latest | :white_check_mark: |
14+
| < latest | :x: |
15+
16+
## Security Measures
17+
18+
This project implements the following security measures:
19+
20+
- Regular dependency updates
21+
- Code scanning for vulnerabilities
22+
- Security review process for all contributions
23+
- Adherence to AWS security best practices
24+
25+
## Security Recommendations
26+
27+
When using this tool:
28+
29+
1. Keep the tool and its dependencies up to date
30+
2. Use the latest stable release
31+
3. Follow the principle of least privilege when configuring AWS credentials
32+
4. Review the documentation for security-related best practices
33+
5. Report any security concerns immediately
34+
35+
## Additional Resources
36+
37+
- [AWS Security Documentation](https://docs.aws.amazon.com/security/)
38+
- [AWS Security Blog](https://aws.amazon.com/blogs/security/)
39+
- [AWS Security Bulletins](https://aws.amazon.com/security/security-bulletins/)

0 commit comments

Comments
 (0)