fix CI
This commit is contained in:
parent
70abf4d70e
commit
f2ebb0fb88
@ -1,99 +1,94 @@
|
||||
name: CI
|
||||
run-name: \${{ github.actor }} is running myRPC CI
|
||||
name: CI
|
||||
run-name: ${{ github.actor }} is running myRPC CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
\- main
|
||||
\- master
|
||||
pull\_request:
|
||||
branches:
|
||||
\- main
|
||||
\- master
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
- master
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
- master
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build and Test
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
\- name: Checkout repository
|
||||
uses: actions/checkout\@v3
|
||||
jobs:
|
||||
build:
|
||||
name: Build and Test
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y gcc make libconfig-dev dpkg-dev ruby ruby-dev build-essential
|
||||
sudo gem install --no-document fpm
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y gcc make libconfig-dev dpkg-dev ruby ruby-dev build-essential
|
||||
sudo gem install --no-document fpm
|
||||
|
||||
- name: Build project
|
||||
run: make all
|
||||
- name: Build project
|
||||
run: make all
|
||||
|
||||
- name: Verify binaries exist
|
||||
run: |
|
||||
test -x build/myRPC-client
|
||||
test -x build/myRPC-server
|
||||
echo "Binaries built successfully"
|
||||
- name: Verify binaries exist
|
||||
run: |
|
||||
test -x build/myRPC-client
|
||||
test -x build/myRPC-server
|
||||
echo "Binaries built successfully"
|
||||
|
||||
- name: Test server startup
|
||||
run: |
|
||||
sudo mkdir -p /etc/myRPC
|
||||
printf "port = 9090;\nsocket_type = \"stream\";\n" | sudo tee /etc/myRPC/myRPC.conf
|
||||
printf "${{ github.actor }}\n" | sudo tee /etc/myRPC/users.conf
|
||||
build/myRPC-server &
|
||||
pid=$!
|
||||
sleep 2
|
||||
ps -p $pid
|
||||
kill $pid
|
||||
echo "Server started successfully"
|
||||
- name: Test server startup
|
||||
run: |
|
||||
sudo mkdir -p /etc/myRPC
|
||||
printf "port = 9090;\nsocket_type = \"stream\";\n" | sudo tee /etc/myRPC/myRPC.conf
|
||||
printf "${{ github.actor }}\n" | sudo tee /etc/myRPC/users.conf
|
||||
build/myRPC-server &
|
||||
pid=$!
|
||||
sleep 2
|
||||
ps -p $pid
|
||||
kill $pid
|
||||
echo "Server started successfully"
|
||||
|
||||
- name: Test client-server interaction
|
||||
run: |
|
||||
build/myRPC-server &
|
||||
pid=$!
|
||||
sleep 2
|
||||
build/myRPC-client -h 127.0.0.1 -p 9090 -s -c "echo OK" > response.txt
|
||||
grep -q "OK" response.txt
|
||||
kill $pid
|
||||
echo "Client received OK from server"
|
||||
- name: Test client-server interaction
|
||||
run: |
|
||||
build/myRPC-server &
|
||||
pid=$!
|
||||
sleep 2
|
||||
build/myRPC-client -h 127.0.0.1 -p 9090 -s -c "echo OK" > response.txt
|
||||
grep -q "OK" response.txt
|
||||
kill $pid
|
||||
echo "Client received OK from server"
|
||||
|
||||
lint:
|
||||
name: Makefile Lint
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
\- name: Checkout repository
|
||||
uses: actions/checkout\@v3
|
||||
lint:
|
||||
name: Makefile Lint
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
- name: Check Makefile syntax
|
||||
run: make -n all
|
||||
|
||||
- name: Check Makefile syntax
|
||||
run: make -n all
|
||||
clean:
|
||||
name: Clean target test
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
- name: Test clean
|
||||
run: |
|
||||
make all
|
||||
make clean
|
||||
test ! -d build
|
||||
|
||||
clean:
|
||||
name: Clean target test
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
\- name: Checkout repository
|
||||
uses: actions/checkout\@v3
|
||||
|
||||
- name: Test clean
|
||||
run: |
|
||||
make all
|
||||
make clean
|
||||
test ! -d build
|
||||
|
||||
deb:
|
||||
name: Build deb packages
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
\- name: Checkout repository
|
||||
uses: actions/checkout\@v3
|
||||
|
||||
- name: Install packaging tools
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y ruby ruby-dev build-essential
|
||||
sudo gem install --no-document fpm
|
||||
|
||||
- name: Build deb packages
|
||||
run: make deb
|
||||
|
||||
- name: Verify deb files
|
||||
run: ls *.deb | tee deb-list.txt
|
||||
deb:
|
||||
name: Build deb packages
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
- name: Install packaging tools
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y ruby ruby-dev build-essential
|
||||
sudo gem install --no-document fpm
|
||||
- name: Build deb packages
|
||||
run: make deb
|
||||
- name: Verify deb files
|
||||
run: ls *.deb | tee deb-list.txt
|
||||
Loading…
x
Reference in New Issue
Block a user