Run iambic inside a AWS Lambda with generic git provider that supports repository clone via https
Project description
iambic-plugin-generic-git-provider-integration
Run iambic in a AWS lambda function with any generic git provider
initial design
CEP 004 - Generic Git Provider Support
Champion
smoy
Summary
Quickly add support to other Git Provider that is not GitHub
Rationale
The GitHub integration took sometime because it uses GitHub App interaction model. Such app support is not universal in other Git providers. We want to maximize other Git provider support with minimum complexity.
The most supported mechanism is git checkout repository using https. For the sake of concrete examples, we will attempt to make this generic git provider at least support BitBucket, AWS CodeCommit and GitLab. It's not limited to just these 3 providers. A Git provider that supports git clone via https should be sufficient.
https git clone for private repository typically involves http basic auth. We recommend users use an repository scoped token for authentication. We strongly advise against using actual username, password combination. Access token is less prone to re-use across other services.
Road Map
- Launch import support with generic git provider.
- Recruit additional help to implement Git Provider specific interactions.
Git Provider specific interactions
- Each provider has different webhook event implementation details.
- Each provider has different REST API
- Each provider has different authentication + authorization model
Customer Experience
- User will still use
iambic setup
to install a lambda function - The lambda function will be driven by AWS EventBridge to periodic import.
- During install, user will need to provide the following
- username
- token
- clone url (must be https:// based)
- repo full name (typically company_name/repo_name )
- default branch name (typically main or master)
Alternative
Is there alternative considered?
Implementation
What's needed on the implementation?
Compatibility concern
Is there any compatibility concern?
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file iambic_plugin_generic_git_provider-0.1.0.tar.gz
.
File metadata
- Download URL: iambic_plugin_generic_git_provider-0.1.0.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.4.2 CPython/3.9.18 Darwin/22.5.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 43695d9183e3c60947bc1cf5e5103b400dd19a9b0439117243fff7423e5450fe |
|
MD5 | 8320185beeb9a0be81981d57fa6fb066 |
|
BLAKE2b-256 | 7357d89e6c490060cf37a21331a4dc4ce06c77029461db6418dd2ad5df6c30f2 |
File details
Details for the file iambic_plugin_generic_git_provider-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: iambic_plugin_generic_git_provider-0.1.0-py3-none-any.whl
- Upload date:
- Size: 10.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.4.2 CPython/3.9.18 Darwin/22.5.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25aaec68fcfe81ef4ba1c7375b96f4510945ae2b04301da084f6a18327f44a64 |
|
MD5 | 556aab30e6c1aaf84d32f9e969c8b6e3 |
|
BLAKE2b-256 | ef2e6a8b3ebf6d8b0171794ba562a85c07fd950be21b600769d3d1e68d9b6c1e |