Skip to content

s

s #196

Workflow file for this run

name: Test
on:
workflow_dispatch:
release:
types: [ published ]
push:
branches:
- '*'
paths:
- '**.sh'
- '.github/workflows/test.yml'
- 'index.js'
- 'conf/*'
- 'hooks/*'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
testsshfs:
if: ${{ !contains(github.repository, 'solaris') && !contains(github.repository, 'dragonflybsd') && !contains(github.repository, 'omnios')}}
strategy:
fail-fast: false
matrix:
release: [ "11.4","11.4-gcc", ""]
arch: [ "aarch64", ""]
runs: [ "ubuntu-24.04"]
runs-on: ${{ matrix.runs }}
name: sshfs Solaris
env:
MYTOKEN : ${{ secrets.MYTOKEN }}
MYTOKEN2: "value2"
SEC_VBOX : ${{ secrets.SEC_VBOX }}
DEBUG: 1
steps:
- uses: actions/checkout@v4
- name: Check arch
id: check
run: |
_release="${{ matrix.release }}"
if [ -z "$_release" ]; then
. conf/default.release.conf
_release="$DEFAULT_RELEASE"
fi
_arch="${{ matrix.arch }}"
if [ "${_arch}" = "x86_64" ]; then
_arch=""
fi
if [ -z "${_arch}" ]; then
#ok, go ahead
echo "arch is empty"
echo "run=true" >> $GITHUB_OUTPUT
elif [ -e "conf/${_release}-${_arch}.conf" ]; then
#ok, go ahead
echo "conf exists: conf/${_release}-${_arch}.conf"
echo "run=true" >> $GITHUB_OUTPUT
else
echo "The release ${_release} doesn't support ${_arch}, skip."
echo "run=false" >> $GITHUB_OUTPUT
fi
- name: Creating Web console
if: ${{ steps.check.outputs.run == 'true' }}
uses: vmactions/cf-tunnel@v0
id: tunnel
with:
protocol: http
port: 8000
- name: Test in Solaris
if: ${{ steps.check.outputs.run == 'true' }}
id: test
uses: vmactions/solaris-vm@19b94fddc256ec83a68dfc64bd9c6fc51474a9c1
with:
envs: 'DEBUG MYTOKEN MYTOKEN2'
prepare: |
pkgutil -y -i socat
release: ${{ matrix.release }}
arch: ${{ matrix.arch }}
nat: |
"10022": "22"
"8080": "80"
"8443": "443"
udp:"8081": "80"
usesh: true
sync: sshfs
run: |
ls -lah /root/work
tree $HOME/work/
if [ -z "$(ls -A $HOME/work)" ]; then
echo "sshfs error."
exit 1
fi
echo "TEST_ENV=abc" >>${GITHUB_ENV}
if [ -n "test" ]; then
echo "false"
fi
if [ "test" ]; then
echo "test"
fi
pwd
ls -lah
whoami
env
psrinfo -vp
cat /etc/release
psrinfo -v
echo "::memstat" | mdb -k
echo "OK"
- name: Test NAT
if: ${{ steps.check.outputs.run == 'true' }}
run:
echo "TEST_ENV=$TEST_ENV"
[ "$TEST_ENV" = "abc" ]
ssh -vvv -p 10022 -i $HOME/.ssh/host.id_rsa root@localhost "uname -a;whoami;pwd"
- name: Test custom shell
if: ${{ steps.check.outputs.run == 'true' }}
shell: solaris {0}
run: |
pwd
cd $GITHUB_WORKSPACE;
pwd
if [ -n "test" ]; then
echo "false"
fi
if [ "test" ]; then
echo "test"
fi
pwd
ls -lah
whoami
env
psrinfo -vp
cat /etc/release
psrinfo -v
echo "::memstat" | mdb -k
echo "OK"
testnfs:
strategy:
fail-fast: false
matrix:
release: [ "11.4","11.4-gcc", ""]
arch: [ "aarch64", ""]
runs: [ "ubuntu-24.04"]
runs-on: ${{ matrix.runs }}
name: nfs Solaris
env:
MYTOKEN : ${{ secrets.MYTOKEN }}
MYTOKEN2: "value2"
SEC_VBOX : ${{ secrets.SEC_VBOX }}
DEBUG: 1
steps:
- uses: actions/checkout@v4
- name: Check arch
id: check
run: |
_release="${{ matrix.release }}"
if [ -z "$_release" ]; then
. conf/default.release.conf
_release="$DEFAULT_RELEASE"
fi
_arch="${{ matrix.arch }}"
if [ "${_arch}" = "x86_64" ]; then
_arch=""
fi
if [ -z "${_arch}" ]; then
#ok, go ahead
echo "arch is empty"
echo "run=true" >> $GITHUB_OUTPUT
elif [ -e "conf/${_release}-${_arch}.conf" ]; then
#ok, go ahead
echo "conf exists: conf/${_release}-${_arch}.conf"
echo "run=true" >> $GITHUB_OUTPUT
else
echo "The release ${_release} doesn't support ${_arch}, skip."
echo "run=false" >> $GITHUB_OUTPUT
fi
- name: Creating Web console
if: ${{ steps.check.outputs.run == 'true' }}
uses: vmactions/cf-tunnel@v0
id: tunnel
with:
protocol: http
port: 8000
- name: Test in Solaris
if: ${{ steps.check.outputs.run == 'true' }}
id: test
uses: vmactions/solaris-vm@19b94fddc256ec83a68dfc64bd9c6fc51474a9c1
with:
envs: 'DEBUG MYTOKEN MYTOKEN2'
prepare: |
pkgutil -y -i socat
release: ${{ matrix.release }}
arch: ${{ matrix.arch }}
nat: |
"10022": "22"
"8080": "80"
"8443": "443"
udp:"8081": "80"
usesh: true
sync: nfs
run: |
ls -lah /root/work
tree $HOME/work/
if [ -z "$(ls -A $HOME/work)" ]; then
echo "nfs error."
exit 1
fi
echo "TEST_ENV=abc" >>${GITHUB_ENV}
if [ -n "test" ]; then
echo "false"
fi
if [ "test" ]; then
echo "test"
fi
pwd
ls -lah
whoami
env
psrinfo -vp
cat /etc/release
psrinfo -v
echo "::memstat" | mdb -k
echo "OK"
- name: Test NAT
if: ${{ steps.check.outputs.run == 'true' }}
run:
echo "TEST_ENV=$TEST_ENV"
[ "$TEST_ENV" = "abc" ]
ssh -vvv -p 10022 -i $HOME/.ssh/host.id_rsa root@localhost "uname -a;whoami;pwd"
- name: Test custom shell
if: ${{ steps.check.outputs.run == 'true' }}
shell: solaris {0}
run: |
pwd
cd $GITHUB_WORKSPACE;
pwd
if [ -n "test" ]; then
echo "false"
fi
if [ "test" ]; then
echo "test"
fi
pwd
ls -lah
whoami
env
psrinfo -vp
cat /etc/release
psrinfo -v
echo "::memstat" | mdb -k
echo "OK"
test:
strategy:
fail-fast: false
matrix:
release: [ "11.4","11.4-gcc", ""]
arch: [ "aarch64", ""]
runs: [ "ubuntu-24.04"]
runs-on: ${{ matrix.runs }}
name: Solaris
env:
MYTOKEN : ${{ secrets.MYTOKEN }}
MYTOKEN2: "value2"
SEC_VBOX : ${{ secrets.SEC_VBOX }}
steps:
- uses: actions/checkout@v4
- name: Check arch
id: check
run: |
_release="${{ matrix.release }}"
if [ -z "$_release" ]; then
. conf/default.release.conf
_release="$DEFAULT_RELEASE"
fi
_arch="${{ matrix.arch }}"
if [ "${_arch}" = "x86_64" ]; then
_arch=""
fi
if [ -z "${_arch}" ]; then
#ok, go ahead
echo "arch is empty"
echo "run=true" >> $GITHUB_OUTPUT
elif [ -e "conf/${_release}-${_arch}.conf" ]; then
#ok, go ahead
echo "conf exists: conf/${_release}-${_arch}.conf"
echo "run=true" >> $GITHUB_OUTPUT
else
echo "The release ${_release} doesn't support ${_arch}, skip."
echo "run=false" >> $GITHUB_OUTPUT
fi
- name: Test in Solaris
if: ${{ steps.check.outputs.run == 'true' }}
id: test
uses: vmactions/solaris-vm@19b94fddc256ec83a68dfc64bd9c6fc51474a9c1
with:
envs: 'MYTOKEN MYTOKEN2'
prepare: |
pkgutil -y -i socat
mem: 4096
release: ${{ matrix.release }}
arch: ${{ matrix.arch }}
nat: |
"10022": "22"
"8080": "80"
"8443": "443"
udp:"8081": "80"
usesh: true
run: |
echo "TEST_ENV=abc" >>${GITHUB_ENV}
if [ -n "test" ]; then
echo "false"
fi
if [ "test" ]; then
echo "test"
fi
pwd
ls -lah
whoami
env
psrinfo -vp
cat /etc/release
psrinfo -v
echo "::memstat" | mdb -k
echo "OK"
- name: Test NAT
if: ${{ steps.check.outputs.run == 'true' }}
run:
echo "TEST_ENV=$TEST_ENV"
[ "$TEST_ENV" = "abc" ]
ssh -vvv -p 10022 -i $HOME/.ssh/host.id_rsa root@localhost "uname -a;whoami;pwd"
- name: Test custom shell
if: ${{ steps.check.outputs.run == 'true' }}
shell: solaris {0}
run: |
pwd
cd $GITHUB_WORKSPACE;
pwd
if [ -n "test" ]; then
echo "false"
fi
if [ "test" ]; then
echo "test"
fi
pwd
ls -lah
whoami
env
psrinfo -vp
cat /etc/release
psrinfo -v
echo "::memstat" | mdb -k
echo "OK"