Add pwsh support #306
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: linux-tests | |
on: | |
push: | |
branches-ignore: | |
- c-main | |
- c-3.2 | |
pull_request: | |
jobs: | |
tcl86-nolibtclenvmodules: | |
runs-on: ubuntu-20.04 | |
env: | |
CONFIGURE_OPTS: --with-tclsh=tclsh8.6 --disable-libtclenvmodules --prefix=/tmp/modules --with-pager=more --with-pager-opts=-X --with-initconf-in=initdir --enable-quarantine-support --disable-set-binpath --disable-set-manpath | |
COVERAGE: y | |
EXTRA_SCRIPT_PRETEST: make install-testmodulerc install-testetcrc install-testmodspath-empty install-testmoguicmd | |
EXTRA_SCRIPT_POSTTEST: make uninstall-testconfig | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install system packages | |
run: | | |
sudo apt-get -y update | |
sudo apt-get install -y expect-dev dejagnu python3-sphinx gzip bash tcsh ksh zsh fish tcl8.6 perl python3 ruby cmake r-base-core | |
# add package to run tests in an X-enabled environment | |
sudo apt-get install -y xvfb x11-xserver-utils | |
# install powershell | |
curl -L --output powershell_7.4.5-1.deb_amd64.deb https://github.com/PowerShell/PowerShell/releases/download/v7.4.5/powershell_7.4.5-1.deb_amd64.deb | |
sudo dpkg -i powershell_7.4.5-1.deb_amd64.deb | |
sudo apt-get install -f | |
rm powershell_7.4.5-1.deb_amd64.deb | |
- name: Build Modules | |
run: | | |
./configure $CONFIGURE_OPTS | |
make | |
- name: Test Modules build | |
run: | | |
eval $EXTRA_SCRIPT_PRETEST | |
make test-deps | |
xvfb-run script/mt | |
eval $EXTRA_SCRIPT_POSTTEST | |
- name: Install Modules | |
run: | | |
make install | |
- name: Test Modules installation | |
run: | | |
xvfb-run script/mt install | |
for f in tcl/*.tcl; do | |
script/nglfar2ccov $f | |
done | |
cd lib | |
gcov envmodules | |
- name: Uninstall Modules | |
run: | | |
make uninstall | |
- uses: codecov/codecov-action@v4 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: testsuite-logs-${{ github.job }} | |
path: | | |
modules.log | |
install.log | |
retention-days: 5 | |
tcl85-nolibtclenvmodules: | |
runs-on: ubuntu-20.04 | |
env: | |
CONFIGURE_OPTS: --with-tclsh=tclsh8.5 --prefix=/tmp/modules --disable-libtclenvmodules --with-tcl=/usr/local/lib --enable-versioning --with-loadedmodules=null:dot --without-pager --disable-avail-indepth --with-terminal-background=light --with-unload-match-order=returnfirst --disable-implicit-default --with-search-match=contains --with-locked-configs=extra_siteconfig --disable-auto-handling --disable-extended-default --disable-advanced-version-spec --disable-color --with-icase=never --with-tcl-linter=nagelfar132/nagelfar.tcl | |
COVERAGE: y | |
EXTRA_SCRIPT_PRETEST: make install-testinitrc install-testsiteconfig | |
EXTRA_SCRIPT_POSTTEST: make uninstall-testconfig | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install system packages | |
run: | | |
sudo apt-get -y update | |
sudo apt-get install -y expect-dev dejagnu python3-sphinx gzip bash tcsh ksh zsh perl python3 ruby cmake r-base-core | |
# libtclenvmodules build requirements | |
sudo apt-get install -y gcc autoconf | |
# install powershell | |
curl -L --output powershell_7.4.5-1.deb_amd64.deb https://github.com/PowerShell/PowerShell/releases/download/v7.4.5/powershell_7.4.5-1.deb_amd64.deb | |
sudo dpkg -i powershell_7.4.5-1.deb_amd64.deb | |
sudo apt-get install -f | |
rm powershell_7.4.5-1.deb_amd64.deb | |
# manually install tcl8.5 | |
curl -L --output tcl8.5.19-src.tar.gz http://downloads.sourceforge.net/tcl/tcl8.5.19-src.tar.gz | |
tar xfz tcl8.5.19-src.tar.gz | |
cd tcl8.5.19/unix | |
./configure | |
make -j | |
sudo make install | |
- name: Build Modules | |
run: | | |
./configure $CONFIGURE_OPTS | |
make | |
- name: Test Modules build | |
run: | | |
eval $EXTRA_SCRIPT_PRETEST | |
make test-deps | |
script/mt | |
eval $EXTRA_SCRIPT_POSTTEST | |
- name: Install Modules | |
run: | | |
make install | |
- name: Test Modules installation | |
run: | | |
script/mt install | |
for f in tcl/*.tcl; do | |
script/nglfar2ccov $f | |
done | |
cd lib | |
gcov envmodules | |
- name: Uninstall Modules | |
run: | | |
make uninstall | |
- uses: codecov/codecov-action@v4 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: testsuite-logs-${{ github.job }} | |
path: | | |
modules.log | |
install.log | |
retention-days: 5 | |
tcl85-2: | |
runs-on: ubuntu-20.04 | |
env: | |
CONFIGURE_OPTS: --with-tclsh=tclsh8.5 --prefix=/tmp/modules --with-tcl=/usr/local/lib --enable-quarantine-support --enable-silent-shell-debug-support --enable-modulespath --with-pager=more --with-dark-background-colors=hi --with-locked-configs=implicit_default --enable-wa-277 --enable-advanced-version-spec --disable-ml --disable-implicit-requirement --enable-set-shell-startup | |
COVERAGE: y | |
EXTRA_SCRIPT_PRETEST: make install-testinitrc-1 install-testetcrc install-testmodspath | |
EXTRA_SCRIPT_POSTTEST: make uninstall-testconfig | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install system packages | |
run: | | |
sudo apt-get -y update | |
sudo apt-get install -y expect-dev dejagnu python3-sphinx gzip bash tcsh ksh zsh fish perl python3 ruby cmake r-base-core | |
# libtclenvmodules build requirements | |
sudo apt-get install -y gcc autoconf | |
# install powershell | |
curl -L --output powershell_7.4.5-1.deb_amd64.deb https://github.com/PowerShell/PowerShell/releases/download/v7.4.5/powershell_7.4.5-1.deb_amd64.deb | |
sudo dpkg -i powershell_7.4.5-1.deb_amd64.deb | |
sudo apt-get install -f | |
rm powershell_7.4.5-1.deb_amd64.deb | |
# manually install tcl8.5 | |
curl -L --output tcl8.5.19-src.tar.gz http://downloads.sourceforge.net/tcl/tcl8.5.19-src.tar.gz | |
tar xfz tcl8.5.19-src.tar.gz | |
cd tcl8.5.19/unix | |
./configure | |
make -j | |
sudo make install | |
- name: Build Modules | |
run: | | |
./configure $CONFIGURE_OPTS | |
make | |
- name: Test Modules build | |
run: | | |
eval $EXTRA_SCRIPT_PRETEST | |
make test-deps | |
script/mt | |
eval $EXTRA_SCRIPT_POSTTEST | |
- name: Install Modules | |
run: | | |
make install | |
- name: Test Modules installation | |
run: | | |
script/mt install | |
for f in tcl/*.tcl; do | |
script/nglfar2ccov $f | |
done | |
cd lib | |
gcov envmodules | |
- name: Uninstall Modules | |
run: | | |
make uninstall | |
- uses: codecov/codecov-action@v4 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: testsuite-logs-${{ github.job }} | |
path: | | |
modules.log | |
install.log | |
retention-days: 5 | |
tcl86: | |
runs-on: ubuntu-20.04 | |
env: | |
CONFIGURE_OPTS: --with-tclsh=tclsh8.6 --prefix=/tmp/modules --libdir=/tmp/modules/lib64 --enable-multilib-support | |
COVERAGE: y | |
COVERAGE_OLDTCL: y | |
COVERAGE_MULTILIB: y | |
EXTRA_SCRIPT_PRETEST: make install-testsiteconfig-1 && export TESTSUITE_ENABLE_SITECONFIG=1 | |
EXTRA_SCRIPT_POSTTEST: unset TESTSUITE_ENABLE_SITECONFIG | |
TESTSUITE_ENABLE_MODULECACHE: 1 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install system packages | |
run: | | |
sudo apt-get -y update | |
sudo apt-get install -y expect-dev dejagnu python3-sphinx gzip bash tcsh ksh zsh fish tcl8.6 perl python3 ruby cmake r-base-core | |
# libtclenvmodules build requirements | |
sudo apt-get install -y gcc autoconf tcl8.6-dev | |
# install powershell | |
curl -L --output powershell_7.4.5-1.deb_amd64.deb https://github.com/PowerShell/PowerShell/releases/download/v7.4.5/powershell_7.4.5-1.deb_amd64.deb | |
sudo dpkg -i powershell_7.4.5-1.deb_amd64.deb | |
sudo apt-get install -f | |
rm powershell_7.4.5-1.deb_amd64.deb | |
- name: Build Modules | |
run: | | |
./configure $CONFIGURE_OPTS | |
make | |
- name: Test Modules build | |
shell: 'script -q -e -c "bash {0}"' | |
run: | | |
set -e | |
eval $EXTRA_SCRIPT_PRETEST | |
make test-deps | |
script/mt | |
eval $EXTRA_SCRIPT_POSTTEST | |
- name: Install Modules | |
run: | | |
make install | |
- name: Test Modules installation | |
run: | | |
script/mt install | |
for f in tcl/*.tcl; do | |
script/nglfar2ccov $f | |
done | |
cd lib | |
gcov envmodules | |
- name: Uninstall Modules | |
run: | | |
make uninstall | |
- uses: codecov/codecov-action@v4 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: testsuite-logs-${{ github.job }} | |
path: | | |
modules.log | |
install.log | |
retention-days: 5 | |
tcl85: | |
runs-on: ubuntu-20.04 | |
env: | |
CONFIGURE_OPTS: --with-tclsh=tclsh8.5 --prefix=/tmp/modules --with-tcl=/usr/local/lib | |
COVERAGE: y | |
EXTRA_SCRIPT_PRETEST: make install-testsiteconfig-1 && export TESTSUITE_ENABLE_SITECONFIG=1 | |
EXTRA_SCRIPT_POSTTEST: unset TESTSUITE_ENABLE_SITECONFIG | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install system packages | |
run: | | |
sudo apt-get -y update | |
sudo apt-get install -y expect-dev dejagnu python3-sphinx gzip bash tcsh ksh zsh perl python3 ruby cmake r-base-core | |
# libtclenvmodules build requirements | |
sudo apt-get install -y gcc autoconf | |
# install powershell | |
curl -L --output powershell_7.4.5-1.deb_amd64.deb https://github.com/PowerShell/PowerShell/releases/download/v7.4.5/powershell_7.4.5-1.deb_amd64.deb | |
sudo dpkg -i powershell_7.4.5-1.deb_amd64.deb | |
sudo apt-get install -f | |
rm powershell_7.4.5-1.deb_amd64.deb | |
# manually install tcl8.5 | |
curl -L --output tcl8.5.19-src.tar.gz http://downloads.sourceforge.net/tcl/tcl8.5.19-src.tar.gz | |
tar xfz tcl8.5.19-src.tar.gz | |
cd tcl8.5.19/unix | |
./configure | |
make -j | |
sudo make install | |
- name: Build Modules | |
run: | | |
./configure $CONFIGURE_OPTS | |
make | |
- name: Test Modules build | |
shell: 'script -q -e -c "bash {0}"' | |
run: | | |
set -e | |
eval $EXTRA_SCRIPT_PRETEST | |
make test-deps | |
script/mt | |
eval $EXTRA_SCRIPT_POSTTEST | |
- name: Install Modules | |
run: | | |
make install | |
- name: Test Modules installation | |
run: | | |
script/mt install | |
for f in tcl/*.tcl; do | |
script/nglfar2ccov $f | |
done | |
cd lib | |
gcov envmodules | |
- name: Uninstall Modules | |
run: | | |
make uninstall | |
- uses: codecov/codecov-action@v4 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: testsuite-logs-${{ github.job }} | |
path: | | |
modules.log | |
install.log | |
retention-days: 5 | |
tcl87: | |
runs-on: ubuntu-22.04 | |
env: | |
CONFIGURE_OPTS: --with-tclsh=tclsh8.7 --prefix=/tmp/modules --with-tcl=/usr/local/lib | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install system packages | |
run: | | |
sudo apt-get -y update | |
sudo apt-get install -y expect-dev dejagnu python3-sphinx gzip bash tcsh ksh zsh fish perl python3 ruby cmake r-base-core | |
# libtclenvmodules build requirements | |
sudo apt-get install -y gcc autoconf | |
# install powershell | |
curl -L --output powershell_7.4.5-1.deb_amd64.deb https://github.com/PowerShell/PowerShell/releases/download/v7.4.5/powershell_7.4.5-1.deb_amd64.deb | |
sudo dpkg -i powershell_7.4.5-1.deb_amd64.deb | |
sudo apt-get install -f | |
rm powershell_7.4.5-1.deb_amd64.deb | |
# manually install tcl8.7 | |
curl -L --output tcl8.7a5-src.tar.gz http://downloads.sourceforge.net/tcl/tcl8.7a5-src.tar.gz | |
tar xfz tcl8.7a5-src.tar.gz | |
cd tcl8.7a5/unix | |
./configure | |
make -j | |
sudo make install | |
- name: Build Modules | |
run: | | |
./configure $CONFIGURE_OPTS | |
make | |
- name: Test Modules build | |
run: | | |
make test-deps | |
script/mt | |
- name: Install Modules | |
run: | | |
make install | |
- name: Test Modules installation | |
run: | | |
script/mt install | |
- name: Uninstall Modules | |
run: | | |
make uninstall | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: testsuite-logs-${{ github.job }} | |
path: | | |
modules.log | |
install.log | |
retention-days: 5 | |
tcl90: | |
runs-on: ubuntu-22.04 | |
env: | |
CONFIGURE_OPTS: --with-tclsh=tclsh9.0 --prefix=/tmp/modules --with-tcl=/usr/local/lib | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install system packages | |
run: | | |
sudo apt-get -y update | |
sudo apt-get install -y expect-dev dejagnu python3-sphinx gzip bash tcsh ksh zsh fish perl python3 ruby cmake r-base-core | |
# libtclenvmodules build requirements | |
sudo apt-get install -y gcc autoconf | |
# install powershell | |
curl -L --output powershell_7.4.5-1.deb_amd64.deb https://github.com/PowerShell/PowerShell/releases/download/v7.4.5/powershell_7.4.5-1.deb_amd64.deb | |
sudo dpkg -i powershell_7.4.5-1.deb_amd64.deb | |
sudo apt-get install -f | |
rm powershell_7.4.5-1.deb_amd64.deb | |
# manually install tcl9.0 | |
curl -L --output tcl9.0b3-src.tar.gz http://downloads.sourceforge.net/tcl/tcl9.0b3-src.tar.gz | |
tar xfz tcl9.0b3-src.tar.gz | |
cd tcl9.0b3/unix | |
./configure | |
make -j | |
sudo make install | |
- name: Build Modules | |
run: | | |
./configure $CONFIGURE_OPTS | |
make | |
- name: Test Modules build | |
run: | | |
make test-deps | |
script/mt | |
- name: Install Modules | |
run: | | |
make install | |
- name: Test Modules installation | |
run: | | |
script/mt install | |
- name: Uninstall Modules | |
run: | | |
make uninstall | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: testsuite-logs-${{ github.job }} | |
path: | | |
modules.log | |
install.log | |
retention-days: 5 |