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

fix(workflows/release): Get release number from tag job #1

Closed
wants to merge 24 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
60ba702
build plugins with default zenoh features
milyin Feb 21, 2024
bbb9f94
chore: Bump create-pull-request from v5 to v6 (#777)
fuzzypixelz Mar 1, 2024
fa40a4d
fix User-Password authentication (#776)
vivekpandey02 Mar 1, 2024
200dd28
feat: Support `.yml` configuration files (#784)
fuzzypixelz Mar 4, 2024
a1cf2be
Interceptors caches (#744)
OlivierHecart Mar 4, 2024
7b6ca9c
fix: Set `publish = false` for zenoh-backend-example (#787)
fuzzypixelz Mar 5, 2024
dffa0a2
fix: Set `fail-fast = false` in sync-lockfiles workflow (#780)
fuzzypixelz Mar 5, 2024
8730335
fix: Remove unused dependencies (#761)
fuzzypixelz Mar 5, 2024
ac45542
fix: Use `clippy` from Stable Rust (#766)
fuzzypixelz Mar 5, 2024
c80124a
Implement get_interface_names for serial link (#772)
sashacmc Mar 5, 2024
f2e99b6
Update downsampling interceptor (#788)
sashacmc Mar 5, 2024
172288e
feat: Support non-default branch in sync-lockfiles workflow
fuzzypixelz Mar 6, 2024
7c1e0c7
Merge pull request #794 from fuzzypixelz/feat-sync-lockfiles-from-branch
gabrik Mar 6, 2024
dd35bb5
fix: Remove (more) unsued dependencies (#798)
fuzzypixelz Mar 7, 2024
3328edb
fix: Remove `clap` 4.x from `zenoh-plugin-storage-manager`'s dep tree…
fuzzypixelz Mar 7, 2024
2e79208
Fix liveliness bug (#802)
OlivierHecart Mar 8, 2024
4537dc2
fix: Resolve Nightly Rustdoc errors and warnings (#792)
fuzzypixelz Mar 8, 2024
6045bfe
update documentation to the new api for keformat's generated Parsed (…
p-avital Mar 13, 2024
c12c005
fix: Relax dependency requirements (#758)
fuzzypixelz Mar 13, 2024
ceb982d
feat: Improve release workflow (#756)
fuzzypixelz Mar 13, 2024
1acb511
Merge branch 'main' into default_features_fix
milyin Mar 13, 2024
63965fc
Merge pull request #745 from eclipse-zenoh/default_features_fix
milyin Mar 13, 2024
1c8ed89
restore SN in case of frame drops caused by congestion control (#815)
yellowhatter Mar 13, 2024
f7a46bf
fix(workflows/release): Get release number from tag job
fuzzypixelz Mar 13, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 0 additions & 41 deletions .github/workflows/Dockerfile

This file was deleted.

6 changes: 3 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,14 +47,14 @@ jobs:
run: cargo fmt --check

- name: Clippy
run: cargo clippy --all-targets -- --deny warnings
run: cargo +stable clippy --all-targets -- --deny warnings

- name: Clippy unstable targets
run: cargo clippy --all-targets --features unstable -- --deny warnings
run: cargo +stable clippy --all-targets --features unstable -- --deny warnings

- name: Clippy all features
if: ${{ matrix.os == 'ubuntu-latest' || matrix.os == 'macOS-latest' }}
run: cargo clippy --all-targets --all-features -- --deny warnings
run: cargo +stable clippy --all-targets --all-features -- --deny warnings

- name: Install generic no_std target
# Generic no_std target architecture is x86_64-unknown-none
Expand Down
32 changes: 0 additions & 32 deletions .github/workflows/crates_check.sh

This file was deleted.

32 changes: 0 additions & 32 deletions .github/workflows/crates_publish.sh

This file was deleted.

104 changes: 104 additions & 0 deletions .github/workflows/pre-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
#
# Copyright (c) 2023 ZettaScale Technology
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
# which is available at https://www.apache.org/licenses/LICENSE-2.0.
#
# SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
#
# Contributors:
# ZettaScale Zenoh Team, <[email protected]>
#
name: Pre-Release

on:
schedule:
- cron: "0 0 * * 1-5"
workflow_dispatch:
inputs:
features:
description: Build with specified features (comma separated, no space)
type: string
workflow_call:
inputs:
features:
description: Build with specified features (comma separated, no space)
type: string

jobs:
checks:
name: Code checks
runs-on: ubuntu-latest
steps:
- name: Clone this repository
uses: actions/checkout@v4

- name: Install Rust toolchain
run: |
rustup show
rustup component add rustfmt clippy

- name: Code format check
run: cargo fmt --check
env:
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse

- name: Clippy check
run: cargo +stable clippy --all-targets --features=${{ inputs.features }} -- --deny warnings

- name: Clippy unstable check
run: cargo +stable clippy --all-targets -- --deny warnings

- name: Clippy all features
run: cargo +stable clippy --all-targets --all-features -- --deny warnings

tests:
name: Tests
needs: checks
runs-on: ubuntu-latest
steps:
- name: Clone this repository
uses: actions/checkout@v4

- name: Install Rust toolchain
run: rustup show

- name: Install nextest
run: cargo install --locked cargo-nextest
env:
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse

- name: Run tests
run: cargo nextest run --release --features=${{ inputs.features }} --verbose
env:
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
ASYNC_STD_THREAD_COUNT: 4

- name: Run doctests
run: cargo test --release --features=${{ inputs.features }} --doc
env:
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
ASYNC_STD_THREAD_COUNT: 4

doc:
name: Doc generation
needs: checks
runs-on: ubuntu-latest
steps:
- name: Clone this repository
uses: actions/checkout@v4

# Use a similar command than docs.rs build: rustdoc with nightly toolchain
- name: Install Rust toolchain nightly for docs gen
run: rustup toolchain install nightly

- name: generate doc
# NOTE: force 'unstable' feature for doc generation, as forced for docs.rs build in zenoh/Cargo.toml
run: >
cargo +nightly rustdoc --manifest-path ./zenoh/Cargo.toml --lib --features unstable -j3
-Z rustdoc-map -Z unstable-options -Z rustdoc-scrape-examples
--config build.rustdocflags='["-Z", "unstable-options", "--emit=invocation-specific", "--cap-lints", "warn", "--disable-per-crate-search", "--extern-html-root-takes-precedence"]'
env:
RUSTDOCFLAGS: -Dwarnings
88 changes: 88 additions & 0 deletions .github/workflows/publish-docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
#
# Copyright (c) 2023 ZettaScale Technology
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
# which is available at https://www.apache.org/licenses/LICENSE-2.0.
#
# SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
#
# Contributors:
# ZettaScale Zenoh Team, <[email protected]>
#
name: Publish (Docker)

on:
workflow_dispatch:
inputs:
live-run:
type: boolean
required: true
version:
type: string
required: false
workflow_call:
inputs:
live-run:
type: boolean
required: true
version:
type: string
required: true

jobs:
main:
name: Docker build and push
runs-on: ubuntu-latest
steps:
- name: Checkout this repository
uses: actions/checkout@v4
with:
ref: ${{ inputs.version }}

- name: Download packages from previous job
uses: actions/download-artifact@v3
with:
path: build

- name: Unzip artifacts
run: |
ls build

mkdir -p docker/linux/amd
unzip build/zenoh-${{ inputs.version }}-x86_64-unknown-linux-musl-artifacts.zip -d docker/linux/amd64/
rm docker/linux/amd64/libzenoh_plugin_example.so

mkdir -p docker/linux/arm64
unzip build/zenoh-${{ inputs.version }}-aarch64-unknown-linux-musl-artifacts.zip -d docker/linux/arm64/
rm docker/linux/arm64/libzenoh_plugin_example.so

tree docker

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Docker meta - set tags and labels
id: meta
uses: docker/metadata-action@v5
with:
images: eclipse/zenoh
labels: |
org.opencontainers.image.licenses=EPL-2.0 OR Apache-2.0

- name: Login to DockerHub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_COM_USERNAME }}
password: ${{ secrets.DOCKER_COM_PASSWORD }}

- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
push: ${{ inputs.live-run }}
platforms: linux/amd64, linux/arm64
file: .github/workflows/Dockerfile
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
Loading