Skip to content

build(deps): bump openssl from 0.10.68 to 0.10.70 #475

build(deps): bump openssl from 0.10.68 to 0.10.70

build(deps): bump openssl from 0.10.68 to 0.10.70 #475

Workflow file for this run

name: CI
on:
push:
branches:
- master
- develop
paths-ignore:
- 'README.md'
- 'LICENSE'
- '.gitignore'
- '.vscode/**'
tags:
- v*
pull_request:
branches:
- master
- develop
paths-ignore:
- 'README.md'
- 'LICENSE'
- '.gitignore'
- '.vscode/**'
merge_group:
workflow_dispatch:
inputs:
release_build:
description: 'Create the release build without publishing'
required: true
type: boolean
default: false
env:
CARGO_TERM_COLOR: always
PKG_CONFIG_SYSROOT_DIR: /
permissions:
contents: write
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
tests:
runs-on: ubuntu-24.04
if: ${{ !startsWith(github.event.head_commit.message, 'docs:') || !contains(github.event.head_commit.message, 'skip ci') }}
steps:
- name: Checkout repo
uses: actions/checkout@85e6279cec87321a52edac9c87bce653a07cf6c2
with:
submodules: 'true'
- name: Rustup stable
run: |
rustup update stable
echo "RUST_VERSION=$(rustc --version | cut -d ' ' -f 2)" >> "$GITHUB_ENV"
- name: Setup rust cache
uses: Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3
with:
prefix-key: "rust-tosho-tests-${{ runner.os }}-${{ env.RUST_VERSION }}"
- name: Test
run: cargo test --verbose --all
build:
needs: tests
strategy:
matrix:
os:
# GNU Linux (x64)
- [ubuntu-24.04, x86_64-unknown-linux-gnu]
# macOS Apple Silicon (cross-compile to x64)
- [macos-14, x86_64-apple-darwin]
# macOS Apple Silicon (ARM64)
- [macos-14, aarch64-apple-darwin]
# Windows Server 2025 (x64)
- [windows-2025, x86_64-pc-windows-msvc]
# Windows Server 2025 (ARM64)
- [windows-2025, aarch64-pc-windows-msvc]
fail-fast: false
runs-on: ${{ matrix.os[0] }}
steps:
- name: Checkout repo
uses: actions/checkout@85e6279cec87321a52edac9c87bce653a07cf6c2
- name: Rust Target
run: |
rustup update stable
rustup target add ${{ matrix.os[1] }}
# In here, we set up the rust version used, the build mode (release or nightly/debug)
# We can check for relase mode by checking refs/tags/v* or input.release_build
- name: Set up cache tag
run: |
echo "RUST_VERSION=$(rustc --version | cut -d ' ' -f 2)" >> "$GITHUB_ENV"
if [ ${{ startsWith(github.ref, 'refs/tags/v') }} = true ] || [ ${{ inputs.release_build == true }} = true ]; then
echo "BUILD_PROFILE=release" >> "$GITHUB_ENV"
else
echo "BUILD_PROFILE=debug" >> "$GITHUB_ENV"
fi
shell: bash
- name: Setup rust cache
uses: Swatinem/rust-cache@f0deed1e0edfc6a9be95417288c0e1099b1eeec3
with:
prefix-key: "rust-tosho-build-${{ env.BUILD_PROFILE }}-${{ runner.os }}-${{ matrix.os[1] }}-${{ env.RUST_VERSION }}"
- name: Build (Nightly)
if: env.BUILD_PROFILE == 'debug'
run: |
cargo build --verbose --all --target ${{ matrix.os[1] }} --profile ci
shell: bash
- name: Permissions (Nightly)
if: env.BUILD_PROFILE == 'debug' && matrix.os[0] != 'windows-2025'
run: |
chmod +x target/${{ matrix.os[1] }}/ci/tosho
shell: bash
- name: Upload artifact
if: env.BUILD_PROFILE == 'debug'
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08
with:
name: tosho-${{ matrix.os[1] }}
path: |
target/${{ matrix.os[1] }}/ci/tosho.exe
target/${{ matrix.os[1] }}/ci/tosho
- name: Build (Release)
if: env.BUILD_PROFILE == 'release'
run: |
cargo build --verbose --all --target ${{ matrix.os[1] }} --profile ci
shell: bash
env:
RELEASE: true
- name: Prepare release
if: env.BUILD_PROFILE == 'release' && matrix.os[0] != 'windows-2025'
shell: bash
run: |
cd target/${{ matrix.os[1] }}/ci
chmod +x tosho
tar -czvf tosho-${{ matrix.os[1] }}.tar.gz tosho
mv tosho-${{ matrix.os[1] }}.tar.gz ../../..
cd ../../..
- name: Prepare release (Win32)
if: env.BUILD_PROFILE == 'release' && matrix.os[0] == 'windows-2025'
run: |
cd target/${{ matrix.os[1] }}/ci
Compress-Archive -Path tosho.exe -DestinationPath tosho-${{ matrix.os[1] }}.zip
mv tosho-${{ matrix.os[1] }}.zip ../../..
cd ../../..
shell: powershell
- name: Upload artifact (Release)
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08
if: env.BUILD_PROFILE == 'release'
with:
name: tosho-packages-${{ matrix.os[1] }}
path: |
tosho-${{ matrix.os[1] }}.zip
tosho-${{ matrix.os[1] }}.tar.gz
releases:
runs-on: ubuntu-24.04
needs: build
if: startsWith(github.ref, 'refs/tags/v') && github.repository_owner == 'noaione'
permissions:
contents: write
discussions: write
steps:
- name: Checkout repo
uses: actions/checkout@85e6279cec87321a52edac9c87bce653a07cf6c2
- name: Download artifacts
uses: actions/download-artifact@7fba95161a0924506ed1ae69cdbae8371ee00b3f
with:
path: tosho-packages
pattern: tosho-packages-*
merge-multiple: true
- name: Create changelog
id: prepare-change
run: |
python3 scripts/create_changelog.py
# Fetch git tag contents subject
VERSION_SUBJ=$(git tag -l --format='%(contents:subject)' ${{ github.ref }})
echo "version_subject=$VERSION_SUBJ" >> "$GITHUB_OUTPUT"
env:
VERSION: ${{ github.ref }}
- name: Release
uses: softprops/action-gh-release@67b6c38432c171b8aa64dc6f3f152d12da2d99fa
with:
files: |
tosho-packages/*
draft: false
prerelease: false
token: ${{ secrets.GITHUB_TOKEN }}
body_path: CHANGELOG-GENERATED.md
name: ${{ steps.prepare-change.outputs.version_subject }}
- name: Create discussions
uses: nvdaes/build-discussion@b35678c64d2814f35a0b26c799e3c7a57bfb9a03
with:
title: Release ${{ github.ref_name }}
body: |
Release **${{ github.ref_name }}** is now available for **[download](https://github.com/noaione/tosho-mango/releases/tag/${{ github.ref_name }})**.
Please see the [changelog](https://github.com/noaione/tosho-mango/blob/master/CHANGELOG.md) for more information.
Report any issues you found in the [issue tracker](https://github.com/noaione/tosho-mango/issues/new/choose)
category-position: 1 # Announcements