Skip to content

feat(whois): add RIPE NCC WHOIS query support with flag #116

feat(whois): add RIPE NCC WHOIS query support with flag

feat(whois): add RIPE NCC WHOIS query support with flag #116

Workflow file for this run

name: Build WHOIS Server
on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
# Allow manual triggering of the workflow
workflow_dispatch:
jobs:
build:
name: Build on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-22.04, ubuntu-24.04]
include:
- os: ubuntu-22.04
artifact-name: whois-server-ubuntu-22.04
- os: ubuntu-24.04
artifact-name: whois-server-ubuntu-24.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy
- name: Cache Rust dependencies
uses: actions/cache@v3
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ matrix.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ matrix.os }}-cargo-
- name: Install Lua
run: |
sudo apt-get update
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y \
lua5.4 liblua5.4-dev pkg-config build-essential
lua -v || true
- name: Build
run: cargo build --release
- name: Create artifacts directory
run: |
mkdir -p artifacts
cp target/release/whois-server artifacts/
cp README.md LICENSE.txt artifacts/
# Include Python source code for Pixiv integration
cp -r src/services/pixiv artifacts/pixiv
cp requirements.txt artifacts/ || echo "No requirements.txt found"
tar -czf ${{ matrix.artifact-name }}.tar.gz -C artifacts .
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.artifact-name }}
path: ${{ matrix.artifact-name }}.tar.gz
retention-days: 7