Skip to content

Commit

Permalink
Merge pull request #37 from G-Core/feat/release_pipeline
Browse files Browse the repository at this point in the history
New release pipeline
  • Loading branch information
ruslanti authored Sep 12, 2024
2 parents 9f7609c + d5749b8 commit f2db9cf
Show file tree
Hide file tree
Showing 17 changed files with 4,701 additions and 73 deletions.
7 changes: 6 additions & 1 deletion .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,14 @@ on:
push:
branches-ignore:
- 'main'
- 'releases/**'

env:
CARGO_TERM_COLOR: always
RUSTFLAGS: "-Dwarnings"

jobs:
build:
pipeline:
runs-on: ubuntu-latest

steps:
Expand Down Expand Up @@ -38,6 +40,9 @@ jobs:
- name: Unit Tests
run: cargo test --all --exclude http-backend

- name: Check formatting
run: cargo fmt --all -- --check

- name: Run Clippy
run: cargo clippy --all-targets --all-features

23 changes: 23 additions & 0 deletions .github/workflows/create_release_pr.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Create release pull request
on:
push:
branches:
- 'releases/**'

permissions:
contents: write
pull-requests: write

jobs:
create_release_pr:
runs-on: ubuntu-latest
steps:
- name: Clone repo
uses: actions/checkout@v4
with:
submodules: recursive

- name: Create GitHub PR for release branch
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: gh pr create --base main --title ${{ github.ref_name }} --body ${{ github.ref_name }}
36 changes: 25 additions & 11 deletions .github/workflows/cd.yaml β†’ .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -1,21 +1,32 @@
name: Continuous Delivery
name: Release

permissions:
pull-requests: write
contents: write

on:
push:
tags:
- "v*.*.*"
- 'v[0-9]+.*'

env:
CARGO_TERM_COLOR: always
RUSTFLAGS: "-Dwarnings"

jobs:
build-and-upload:
name: Build and upload
create-release:
name: Create release
runs-on: ubuntu-latest
steps:
- name: Create GitHub Release
id: release
uses: softprops/action-gh-release@v2
with:
generate_release_notes: true
prerelease: ${{ contains(github.ref_name, 'rc') }}

build-release:
name: Build release
needs: ['create-release']
runs-on: ${{ matrix.os }}

strategy:
Expand All @@ -41,9 +52,6 @@ jobs:

- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
with:
target: wasm32-wasi
components: rustfmt, clippy

- name: Cache dependencies
uses: Swatinem/[email protected]
Expand All @@ -67,14 +75,20 @@ jobs:
if [ "${{ matrix.os }}" = "windows-latest" ]; then
7z a "$dirname.zip" "$dirname"
certutil -hashfile "$dirname.zip" SHA256 > "$dirname.zip.sha256"
echo "ASSET=$dirname.zip" >> $GITHUB_ENV
echo "ASSET_SUM=$dirname.tar.gz.sha256" >> $GITHUB_ENV
else
tar -czf "$dirname.tar.gz" "$dirname"
shasum -a 256 "$dirname.tar.gz" > "$dirname.tar.gz.sha256"
echo "ASSET=$dirname.tar.gz" >> $GITHUB_ENV
echo "ASSET_SUM=$dirname.tar.gz.sha256" >> $GITHUB_ENV
fi
- name: Release
uses: softprops/action-gh-release@v1
- name: Upload release archive
uses: softprops/action-gh-release@v2
with:
files: |
${{ env.ASSET }}
${{ env.ASSET }}
${{ env.ASSET_SUM }}
3 changes: 1 addition & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,4 @@ target/
**/*.rs.bk

# MSVC Windows builds of rustc generate these, which store debugging information
*.pdb
/Cargo.lock
*.pdb
124 changes: 124 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
# Changelog

All notable changes to this project will be documented in this file.

## [0.5.7-rc.2] - 2024-09-09

### πŸ› Bug Fixes

- Release pipeline

## [0.5.7-rc.1] - 2024-09-09

### πŸš€ Features

- Refactored ExecutorCache trait
- Fix version to Preview2
- Adding request duration and wasm memory used metrics

### πŸ› Bug Fixes

- Set by default total core instance
- Adding requestor field for wasi-http
- Request duration metric
- Change wasm memory usage metric type
- Print execution error and set proper process status code on error
- Change release pipeline
- Adding cargo realease settings

### βš™οΈ Miscellaneous Tasks

- Release

## [0.5.2-3] - 2024-08-05

### πŸ› Bug Fixes

- Add os target

## [0.5.2-2] - 2024-08-05

### πŸ› Bug Fixes

- Add os target

## [0.5.2-1] - 2024-08-05

### πŸ› Bug Fixes

- Simplify tag creation and trigger release on push tag

## [0.5.2] - 2024-08-05

### πŸ› Bug Fixes

- Add server_name as local request authority and remove default http/https port
- Parsing envs and headers arg
- Changed hyper::Error to anyhow::Error
- Adding tag creation
- Adding tag creation
- Adding tag creation
- Adding tag creation
- Adding tag creation
- Adding tag creation
- Adding tag creation
- Drop windows from package list
- Release tag name
- Simplify tag creation and trigger release on push tag

## [0.5.0] - 2024-07-30

### πŸš€ Features

- Adding support for graceful shutdown
- Adding cli support for wasi-http
- Update hyper deps to 1.4
- Add support for WASI HTTP interface
- Write request_id to clickhouse stats

### πŸ› Bug Fixes

- Remove unusual reference
- Add uri missing schema part

## [0.4.1] - 2024-06-26

### πŸš€ Features

- Return custom error codes for internal fastedge errors
- Adding region field to stats and minor string fields perf optimisations

### πŸ› Bug Fixes

- Set by default 60s for max_duration cli parameter
- Add alloc fixture for unit tests
- Add alloc fixture for unit tests
- Adding app lookup by id trait
- Comment code coverage step
- Refactoring stats and metric sub modules
- Fix github pipeline
- Fix github release pipeline
- Add pipeline caching
- Add pipeline caching
- Release pipeline
- Release pipeline
- Make tls as optional http-service feature
- Small app log improvements

### βš™οΈ Miscellaneous Tasks

- Release

## [0.3.7] - 2024-05-15

### πŸš€ Features

- Adding matrix release for different platforms

### πŸ› Bug Fixes

- Clippy warning and new release flow
- Clippy warning and new release flow
- Clippy warning and new release flow

<!-- generated by git-cliff -->
Loading

0 comments on commit f2db9cf

Please sign in to comment.