Skip to content

Commit

Permalink
Introduce Github Actions CI workflow
Browse files Browse the repository at this point in the history
Introduce Github Actions CI workflow to compile test Pull Request and
push.

Add simple build test on Windows and advanced test with various compile
option for Ubuntu.

Signed-off-by: Christian Marangi <[email protected]>
  • Loading branch information
Ansuel committed Apr 28, 2024
1 parent 39f23c8 commit 1f63e26
Showing 1 changed file with 103 additions and 0 deletions.
103 changes: 103 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
name: Build
on:
push:
pull_request:

jobs:
# build-windows:
# name: Build Windows
# runs-on: windows-latest

# steps:
# - name: Add msbuild to PATH
# uses: microsoft/setup-msbuild@v2

# - name: Checkout
# uses: actions/checkout@v4
# with:
# path: nmap

# - name: Checkout mswin32-aux
# run: svn checkout https://svn.nmap.org/nmap-mswin32-aux

# - name: Prepare pcre2
# working-directory: nmap\mswin32
# run: |
# mkdir build-pcre2
# cd build-pcre2
# cmake.exe -A Win32 ..\..\libpcre\

# - name: Build
# working-directory: nmap\mswin32
# run: |
# msbuild nmap.sln /p:Configuration="Release"

build-macos:
name: Build Macos
runs-on: macos-latest

steps:

- name: Install Deps
run: |
brew install python-build
brew link --force openssl@3
- name: Checkout
uses: actions/checkout@v4
with:
path: nmap

- name: Configure
working-directory: nmap
run: |
ls -la /opt/homebrew/
ls -la /opt/homebrew/include
ls -la /opt/homebrew/include/openssl
./configure --with-openssl=/opt/homebrew/include
- name: Build
working-directory: nmap
run: make

# build-ubuntu:
# name: Build Ubuntu
# runs-on: ubuntu-latest

# strategy:
# matrix:
# config:
# - "--without-openssl"
# - "--without-libssh2"
# - "--without-liblua"
# - "--without-zenmap"
# - "--without-ndiff"
# - "--with-nping"
# - "--with-ncat"

# steps:
# - name: Install Deps
# run: |
# sudo apt install python3-build

# # python3-build installed from apt is currently broken
# # Workaround is to just update it
# #
# # Can be dropped eventually once it's correctly handled.
# python3 -m pip install --upgrade build

# - name: Checkout
# uses: actions/checkout@v4

# - name: Configure
# run: ./configure ${{ matrix.config }}

# - name: Build
# run: make

# - name: Check
# run: make check

# - name: Install
# run: sudo make install

0 comments on commit 1f63e26

Please sign in to comment.