9 Commits

Author SHA1 Message Date
10f22956b6 Updates for release
Some checks failed
CI / CI (push) Successful in 7m27s
Release / Publish to Docker Hub (push) Failing after 27s
Release / Publish to crates.io (push) Successful in 5m32s
2023-09-20 18:46:01 -07:00
89e37e2258 Prefer gitea.com-hosted actions where available
Some of the newer versions of the github.com versions aren't compatible
with gitea's fork of act_runner.
2023-09-20 18:46:01 -07:00
3f42a08bcb Use iid field (and not id) field for the correct issue ID 2023-09-20 18:29:07 -07:00
b33935b5f8 Post-release version bump
All checks were successful
CI / CI (push) Successful in 7m20s
2023-09-20 00:54:19 -07:00
406c485055 Downgrade docker/metadata action to v4
All checks were successful
CI / CI (push) Successful in 7m18s
v5 requires the node20 runtime, which act_runner doesn't appear to
support.
2023-09-20 00:08:40 -07:00
967d561911 Add docker release info to readme
Some checks failed
CI / CI (push) Has been cancelled
Release / Publish to crates.io (push) Successful in 4m36s
Release / Publish to Docker Hub (push) Failing after 4s
2023-09-19 23:40:29 -07:00
2f32c7b415 Update dependencies 2023-09-19 23:40:29 -07:00
07915f5e54 Add gitea release workflow 2023-09-19 23:40:29 -07:00
f86c774965 Fill in requires Cargo.toml package metadata 2023-09-19 23:14:25 -07:00
6 changed files with 88 additions and 38 deletions

View File

@ -9,7 +9,7 @@ jobs:
name: CI
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: https://gitea.com/actions/checkout@v3
- uses: https://github.com/actions-rs/toolchain@v1
with:
toolchain: stable

View File

@ -0,0 +1,44 @@
name: Release
on:
push:
tags:
- "v*.*.*"
jobs:
release-crate:
name: Publish to crates.io
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v3
- uses: https://github.com/actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
- name: Publish release
run: cargo publish --token ${{ secrets.CRATES_IO_TOKEN }}
release-docker:
name: Publish to Docker Hub
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v3
- name: docker meta
id: meta
uses: https://github.com/docker/metadata-action@v4
with:
images: |
kelnos/bebot
tags: |
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=semver,pattern={{major}}
- uses: https://gitea.com/docker/setup-qemu-action@v2
- uses: https://gitea.com/docker/setup-buildx-action@v2
- uses: https://gitea.com/docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
- uses: https://gitea.com/docker/build-push-action@f2a1d5e99d037542a71f64918e516c093c6f3fc4
with:
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.output.labels }}

66
Cargo.lock generated
View File

@ -30,9 +30,9 @@ dependencies = [
[[package]]
name = "aho-corasick"
version = "1.0.5"
version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c378d78423fdad8089616f827526ee33c19f2fddbd5de1629152c9593ba4783"
checksum = "ea5d730647d4fadd988536d06fecce94b7b4f2a7efdae548f1cf4b63205518ab"
dependencies = [
"memchr",
]
@ -89,7 +89,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
]
[[package]]
@ -100,7 +100,7 @@ checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
]
[[package]]
@ -152,7 +152,7 @@ checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2"
[[package]]
name = "bebot"
version = "0.1.0"
version = "0.1.2"
dependencies = [
"anyhow",
"constant_time_eq",
@ -469,7 +469,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
]
[[package]]
@ -534,7 +534,7 @@ checksum = "913dce4c5f06c2ea40fc178c06f777ac89fc6b1383e90c254fafb1abe4ba3c82"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
"uuid",
]
@ -615,9 +615,9 @@ dependencies = [
[[package]]
name = "hermit-abi"
version = "0.3.2"
version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b"
checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
[[package]]
name = "http"
@ -1057,7 +1057,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
]
[[package]]
@ -1354,9 +1354,9 @@ checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
[[package]]
name = "rustix"
version = "0.38.13"
version = "0.38.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d7db8590df6dfcd144d22afd1b83b36c21a18d7cbc1dc4bb5295a8712e9eb662"
checksum = "747c788e9ce8e92b12cd485c49ddf90723550b654b32508f979b71a7b1ecda4f"
dependencies = [
"bitflags 2.4.0",
"errno",
@ -1441,7 +1441,7 @@ checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
]
[[package]]
@ -1512,9 +1512,9 @@ dependencies = [
[[package]]
name = "smallvec"
version = "1.11.0"
version = "1.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9"
checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a"
[[package]]
name = "socket2"
@ -1567,9 +1567,9 @@ dependencies = [
[[package]]
name = "syn"
version = "2.0.33"
version = "2.0.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9caece70c63bfba29ec2fed841a09851b14a235c60010fa4de58089b6c025668"
checksum = "7303ef2c05cd654186cb250d29049a24840ca25d2747c25c0381c8d9e2f582e8"
dependencies = [
"proc-macro2",
"quote",
@ -1578,9 +1578,9 @@ dependencies = [
[[package]]
name = "termcolor"
version = "1.2.0"
version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64"
dependencies = [
"winapi-util",
]
@ -1602,7 +1602,7 @@ checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
]
[[package]]
@ -1645,7 +1645,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
]
[[package]]
@ -1683,9 +1683,9 @@ dependencies = [
[[package]]
name = "tokio-util"
version = "0.7.8"
version = "0.7.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d"
checksum = "1d68074620f57a0b21594d9735eb2e98ab38b17f80d3fcb189fca266771ca60d"
dependencies = [
"bytes",
"futures-core",
@ -1748,7 +1748,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
]
[[package]]
@ -1787,9 +1787,9 @@ dependencies = [
[[package]]
name = "typenum"
version = "1.16.0"
version = "1.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
[[package]]
name = "unicase"
@ -1932,7 +1932,7 @@ dependencies = [
"once_cell",
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
"wasm-bindgen-shared",
]
@ -1966,7 +1966,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@ -2032,9 +2032,9 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
[[package]]
name = "winapi-util"
version = "0.1.5"
version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
dependencies = [
"winapi",
]
@ -2132,9 +2132,9 @@ dependencies = [
[[package]]
name = "zeroize"
version = "1.3.0"
version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4756f7db3f7b5574938c3eb1c117038b8e07f95ee6718c0efad4ac21508f1efd"
checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9"
dependencies = [
"zeroize_derive",
]
@ -2147,5 +2147,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.33",
"syn 2.0.37",
]

View File

@ -1,6 +1,6 @@
[package]
name = "bebot"
version = "0.1.0"
version = "0.1.2"
description = "Gitlab webhook bot that publishes events to Matrix"
license = "GPL-3.0"
authors = [
@ -18,6 +18,9 @@ keywords = [
"bot",
"webhook",
]
exclude = [
".gitea/*",
]
[dependencies]
anyhow = "1"

View File

@ -58,3 +58,6 @@ logging verbosity. (Try `debug`, `info`, `warn` `error`, or `off`.)
A `Dockerfile` is also provided. When running the container it builds,
mount the configuration file so it appears inside the container as
`/bebot/config/bebot.yaml`.
Release images are [published to Docker
Hub](https://hub.docker.com/r/kelnos/bebot).

View File

@ -185,7 +185,7 @@ impl fmt::Display for IssueAction {
#[derive(Debug, Deserialize)]
pub struct IssueObjectAttributes {
pub id: u32,
pub iid: u32,
pub title: String,
pub action: IssueAction,
pub url: String,
@ -406,7 +406,7 @@ impl GitlabEventExt for GitlabEvent {
if object_attributes.action != IssueAction::Other {
let title = format!(
"Issue #{} **{}**: {}",
object_attributes.id, object_attributes.action, object_attributes.title
object_attributes.iid, object_attributes.action, object_attributes.title
);
vec![markdown_link(&title, &object_attributes.url)]
} else {
@ -587,7 +587,7 @@ mod test {
..
} => {
assert_eq!(user.name, "Administrator");
assert_eq!(object_attributes.id, 301);
assert_eq!(object_attributes.iid, 23);
assert_eq!(object_attributes.action, IssueAction::Open);
}
_ => panic!("not an issue event"),