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

Modify GH workflow to always publish to latest #90

Open
wants to merge 80 commits into
base: master
Choose a base branch
from
Open

Modify GH workflow to always publish to latest #90

wants to merge 80 commits into from

Conversation

micrictor
Copy link

I ran into some dependency issues recently due to the latest image not reflecting what's in this repo. This change will make it so every commit to this repo generates a new latest image, while still allowing for the automatic creation of specifically tagged images.

I think that this is better all around - less work for the single-threaded owner of this repo, as latest is always up-to-date, consumers of the serverless-rust package automagically get the latest improvements to the build image, and users are still free to select specific versions as needed.

The only thing I'm unsure of is if, given this change, we would then want to set specific versions of the build image for versions of serverless-rust.

@hrishikeshparanjape
Copy link

this one should solve #98 I think.

zamazan4ik and others added 26 commits August 18, 2021 06:54
- update README with proper links
- refactor a little bit ignore files
- update changelog (add missing newer Rust versions)
- update Makefile defaults
- add me to the license file

Tested:
- Local tests
- fix wrong links to old softprops repos
- fix test image reference
- Makefile updated to use Rust 1.55.0 as the default version

Tested:
- Local tests
- update change log for Rust version 1.55.0
- add new parameter to Makefile
- delete wrong 'with' clause from Github Actions file

Tested:
- No
Problem
Rust releases a new version approximatly every six weeks.
We need to detect a new release
Solution
* install the current stable toolchain
* extract the version of the stable toolchain from rustup check
* extract the version of the installed toolchain from rustup default
* compare and return an error if they do not match
Note
Docker containers are built with  a specific version (not stable).
Problem
Script to check must be installed in the build
Solution
* Add the latest.sh script to container
Note
Problem
Exceute the latest.sh script
Solution
* make command to run the latest.sh script entrypoint
Note
Problem
Version check should be executed routinely
Solution
* Use scheduled github action to run check
* Load unix and checkout source
* Make check to run script
Note
* docker on host will download latest conainer
FIX: missing colon on cron
FIX: yaml error
jerusdp and others added 30 commits September 14, 2021 09:58
Problem
Makefile only makes latest and tags with Rust version
Solution
- variable TAG to set the tag with default latest
- tag the debug build to allows debugging non-latest builds
Note
Problem
Nighlty Rust is updated every night!
Solution
 - Action runs each night at 0200 UTC
 - Action can be dispatched from console
 - Run test job and make with environment set to use and tag nigthly
 - Run publsh job on successful test with nightly
 - Only run publish on rust-serverless repo
 - Publish issue if publication fails
Note
Not configured to run security scan (part of seperate PR).
- Build and Publish Nightly Rust image
- Secruity Scan for Docker Image and fix for Issue #6
- add GitHub action to check Rust stable version against Rust installed in latest docker container
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants