act icon indicating copy to clipboard operation
act copied to clipboard

Hangs on apt

Open probonopd opened this issue 8 months ago • 5 comments

Bug report info

[dexed-pipeline/build-linux  ]   🐳  docker exec cmd=[bash -e /var/run/act/workflow/0] user= workdir=
Get:1 http://archive.ubuntu.com/ubuntu jammy InRelease [270 kB]
Get:2 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB]
Get:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [128 kB]        
Get:4 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [127 kB]      
Get:5 https://packages.microsoft.com/ubuntu/22.04/prod jammy InRelease [3632 B]
Get:6 https://ppa.launchpadcontent.net/git-core/ppa/ubuntu jammy InRelease [24.6 kB]
Get:7 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 Packages [1245 kB]
Get:8 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [2894 kB]
Get:9 http://security.ubuntu.com/ubuntu jammy-security/multiverse amd64 Packages [47.7 kB]
Get:10 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [4266 kB]
Get:11 http://archive.ubuntu.com/ubuntu jammy/restricted amd64 Packages [164 kB]
Get:13 http://archive.ubuntu.com/ubuntu jammy/universe amd64 Packages [17.5 MB]
Get:14 http://archive.ubuntu.com/ubuntu jammy/main amd64 Packages [1792 kB]
Get:15 http://archive.ubuntu.com/ubuntu jammy/multiverse amd64 Packages [266 kB]
Get:16 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 Packages [1545 kB]
Get:17 http://archive.ubuntu.com/ubuntu jammy-updates/multiverse amd64 Packages [55.7 kB]
Get:18 http://archive.ubuntu.com/ubuntu jammy-updates/restricted amd64 Packages [4420 kB]
Get:12 https://packagecloud.io/github/git-lfs/ubuntu jammy InRelease [29.2 kB]
Get:19 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages [3205 kB]
Get:20 http://archive.ubuntu.com/ubuntu jammy-backports/main amd64 Packages [82.7 kB]
Get:21 http://archive.ubuntu.com/ubuntu jammy-backports/universe amd64 Packages [35.2 kB]
Get:22 https://packages.microsoft.com/ubuntu/22.04/prod jammy/main amd64 Packages [215 kB]
Get:23 https://packages.microsoft.com/ubuntu/22.04/prod jammy/main all Packages [1252 B]
Get:24 https://ppa.launchpadcontent.net/git-core/ppa/ubuntu jammy/main amd64 Packages [4109 B]
Get:25 https://packagecloud.io/github/git-lfs/ubuntu jammy/main amd64 Packages [2213 B]
Fetched 38.4 MB in 2s (16.4 MB/s)                           
Reading package lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
| libxext-dev is already the newest version (2:1.3.4-1build1).
| libxext-dev set to manually installed.
| libfreetype6-dev is already the newest version (2.11.1+dfsg-1ubuntu0.3).
| libfreetype6-dev set to manually installed.
| libx11-dev is already the newest version (2:1.7.5-1ubuntu0.3).
| libx11-dev set to manually installed.
| The following additional packages will be installed:
|   adwaita-icon-theme alsa-topology-conf alsa-ucm-conf aspell aspell-en
|   at-spi2-core bubblewrap dbus-user-session dconf-gsettings-backend
|   dconf-service dictionaries-common emacsen-common enchant-2 fuse3
|   gir1.2-atk-1.0 gir1.2-atspi-2.0 gir1.2-gtk-3.0 gir1.2-harfbuzz-0.0
|   gir1.2-pango-1.0 gir1.2-soup-2.4 glib-networking glib-networking-common
|   glib-networking-services gsettings-desktop-schemas gstreamer1.0-gl
|   gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-x
|   gtk-update-icon-cache humanity-icon-theme hunspell-en-us libaa1 libasound2
|   libasound2-data libaspell15 libasyncns0 libatk-bridge2.0-0
|   libatk-bridge2.0-dev libatk1.0-0 libatk1.0-data libatk1.0-dev libatspi2.0-0
|   libatspi2.0-dev libavahi-client3 libavahi-common-data libavahi-common3
|   libavc1394-0 libcaca0 libcanberra0 libcdparanoia0 libcolord2 libcups2
|   libdatrie-dev libdbus-1-dev libdconf1 libdrm-amdgpu1 libdrm-common
|   libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libdv4 libegl-dev
|   libegl-mesa0 libegl1 libegl1-mesa-dev libenchant-2-2 libepoxy-dev libepoxy0
|   libevdev2 libflac8 libfontenc1 libfribidi-dev libfuse3-3 libgbm1 libgl-dev
|   libgl1 libgl1-amber-dri libgl1-mesa-dri libglapi-mesa libgles-dev libgles1
|   libgles2 libglu1-mesa libglvnd-core-dev libglvnd-dev libglvnd0 libglx-dev
|   libglx-mesa0 libglx0 libgpm2 libgraphene-1.0-0 libgraphite2-dev
|   libgstreamer-gl1.0-0 libgstreamer-plugins-base1.0-0
|   libgstreamer-plugins-good1.0-0 libgtk-3-0 libgtk-3-bin libgtk-3-common
|   libgtk-3-dev libgudev-1.0-0 libharfbuzz-dev libharfbuzz-gobject0
|   libharfbuzz-icu0 libhiredis0.14 libhunspell-1.7-0 libhyphen0 libiec61883-0
|   libjack0 libjavascriptcoregtk-4.0-18 libjavascriptcoregtk-4.0-dev
|   libjson-glib-1.0-0 libjson-glib-1.0-common libllvm15 libmanette-0.2-0
|   libmp3lame0 libmpg123-0 libogg0 libopengl-dev libopengl0 libopus0
|   liborc-0.4-0 libpango1.0-dev libpangoxft-1.0-0 libpciaccess0
|   libpipewire-0.3-0 libpipewire-0.3-common libpipewire-0.3-modules libproxy1v5
|   libpsl-dev libpulse0 libraw1394-11 libsecret-1-0 libsecret-common
|   libsensors-config libsensors5 libshout3 libslang2 libsndfile1
|   libsoup-gnome2.4-1 libsoup2.4-1 libsoup2.4-common libsoup2.4-dev
|   libspa-0.2-modules libspeex1 libtag1v5 libtag1v5-vanilla libtdb1
|   libtext-iconv-perl libthai-dev libtheora0 libtwolame0 libv4l-0
|   libv4lconvert0 libvisual-0.4-0 libvorbis0a libvorbisenc2 libvorbisfile3
|   libvpx7 libwavpack1 libwayland-bin libwayland-client0 libwayland-cursor0
|   libwayland-dev libwayland-egl1 libwayland-server0 libwebkit2gtk-4.0-37
|   libwebrtc-audio-processing1 libwoff1 libx11-xcb1 libxaw7 libxcb-dri2-0
|   libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-randr0 libxcb-sync1
|   libxcb-xfixes0 libxcomposite-dev libxcomposite1 libxcursor-dev libxcursor1
|   libxdamage-dev libxdamage1 libxfixes-dev libxfixes3 libxfont2 libxft-dev
|   libxft2 libxi-dev libxi6 libxinerama1 libxkbcommon-dev libxkbcommon0
|   libxkbfile1 libxmu6 libxmuu1 libxpm4 libxrandr-dev libxrandr2 libxshmfence1
|   libxtst-dev libxtst6 libxv1 libxxf86vm1 pango1.0-tools pipewire pipewire-bin
|   pipewire-media-session rtkit session-migration sound-theme-freedesktop
|   ubuntu-mono wayland-protocols x11-xkb-utils xauth xdg-dbus-proxy
|   xdg-desktop-portal xdg-desktop-portal-gtk xfonts-base xfonts-encodings
|   xfonts-utils xkb-data xserver-common
| Suggested packages:
|   aspell-doc spellutils distcc | icecc wordlist gvfs hunspell
|   openoffice.org-hunspell | openoffice.org-core libasound2-plugins alsa-utils
|   libasound2-doc libcanberra-gtk0 libcanberra-pulse colord cups-common
|   libdatrie-doc libdv-bin oss-compat libenchant-2-voikko gpm
|   libgraphite2-utils libvisual-0.4-plugins libgtk-3-doc jackd1 opus-tools
|   libpango1.0-doc pciutils pulseaudio libraw1394-doc lm-sensors libsoup2.4-doc
|   speex libthai-doc libwayland-doc gstreamer1.0-libav gstreamer1.0-plugins-bad
|   gstreamer1.0-alsa graphicsmagick accountsservice evince
|   xdg-desktop-portal-gnome
| The following NEW packages will be installed:
|   adwaita-icon-theme alsa-topology-conf alsa-ucm-conf aspell aspell-en
|   at-spi2-core bubblewrap ccache dbus-user-session dconf-gsettings-backend
|   dconf-service dictionaries-common emacsen-common enchant-2 fuse3
|   gir1.2-atk-1.0 gir1.2-atspi-2.0 gir1.2-gtk-3.0 gir1.2-harfbuzz-0.0
|   gir1.2-pango-1.0 gir1.2-soup-2.4 glib-networking glib-networking-common
|   glib-networking-services gsettings-desktop-schemas gstreamer1.0-gl
|   gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-x
|   gtk-update-icon-cache humanity-icon-theme hunspell-en-us libaa1 libasound2
|   libasound2-data libasound2-dev libaspell15 libasyncns0 libatk-bridge2.0-0
|   libatk-bridge2.0-dev libatk1.0-0 libatk1.0-data libatk1.0-dev libatspi2.0-0
|   libatspi2.0-dev libavahi-client3 libavahi-common-data libavahi-common3
|   libavc1394-0 libcaca0 libcanberra0 libcdparanoia0 libcolord2 libcups2
|   libdatrie-dev libdbus-1-dev libdconf1 libdrm-amdgpu1 libdrm-common
|   libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libdv4 libegl-dev
|   libegl-mesa0 libegl1 libegl1-mesa-dev libenchant-2-2 libepoxy-dev libepoxy0
|   libevdev2 libflac8 libfontenc1 libfribidi-dev libfuse3-3 libgbm1 libgl-dev
|   libgl1 libgl1-amber-dri libgl1-mesa-dri libglapi-mesa libgles-dev libgles1
|   libgles2 libglu1-mesa libglu1-mesa-dev libglvnd-core-dev libglvnd-dev
|   libglvnd0 libglx-dev libglx-mesa0 libglx0 libgpm2 libgraphene-1.0-0
|   libgraphite2-dev libgstreamer-gl1.0-0 libgstreamer-plugins-base1.0-0
|   libgstreamer-plugins-good1.0-0 libgtk-3-0 libgtk-3-bin libgtk-3-common
|   libgtk-3-dev libgudev-1.0-0 libharfbuzz-dev libharfbuzz-gobject0
|   libharfbuzz-icu0 libhiredis0.14 libhunspell-1.7-0 libhyphen0 libiec61883-0
|   libjack-dev libjack0 libjavascriptcoregtk-4.0-18
|   libjavascriptcoregtk-4.0-dev libjson-glib-1.0-0 libjson-glib-1.0-common
|   libllvm15 libmanette-0.2-0 libmp3lame0 libmpg123-0 libogg0 libopengl-dev
|   libopengl0 libopus0 liborc-0.4-0 libpango1.0-dev libpangoxft-1.0-0
|   libpciaccess0 libpipewire-0.3-0 libpipewire-0.3-common
|   libpipewire-0.3-modules libproxy1v5 libpsl-dev libpulse0 libraw1394-11
|   libsecret-1-0 libsecret-common libsensors-config libsensors5 libshout3
|   libslang2 libsndfile1 libsoup-gnome2.4-1 libsoup2.4-1 libsoup2.4-common
|   libsoup2.4-dev libspa-0.2-modules libspeex1 libtag1v5 libtag1v5-vanilla
|   libtdb1 libtext-iconv-perl libthai-dev libtheora0 libtwolame0 libv4l-0
|   libv4lconvert0 libvisual-0.4-0 libvorbis0a libvorbisenc2 libvorbisfile3
|   libvpx7 libwavpack1 libwayland-bin libwayland-client0 libwayland-cursor0
|   libwayland-dev libwayland-egl1 libwayland-server0 libwebkit2gtk-4.0-37
|   libwebkit2gtk-4.0-dev libwebrtc-audio-processing1 libwoff1 libx11-xcb1
|   libxaw7 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0
|   libxcb-randr0 libxcb-sync1 libxcb-xfixes0 libxcomposite-dev libxcomposite1
|   libxcursor-dev libxcursor1 libxdamage-dev libxdamage1 libxfixes-dev
|   libxfixes3 libxfont2 libxft-dev libxft2 libxi-dev libxi6 libxinerama-dev
|   libxinerama1 libxkbcommon-dev libxkbcommon0 libxkbfile1 libxmu6 libxmuu1
|   libxpm4 libxrandr-dev libxrandr2 libxshmfence1 libxtst-dev libxtst6 libxv1
|   libxxf86vm1 pango1.0-tools pipewire pipewire-bin pipewire-media-session
|   rtkit session-migration sound-theme-freedesktop ubuntu-mono
|   wayland-protocols x11-xkb-utils xauth xdg-dbus-proxy xdg-desktop-portal
|   xdg-desktop-portal-gtk xfonts-base xfonts-encodings xfonts-utils xkb-data
|   xserver-common xvfb
| 0 upgraded, 231 newly installed, 0 to remove and 10 not upgraded.
| Need to get 114 MB of archives.
| After this operation, 461 MB of additional disk space will be used.

Command used with act

act

Describe issue

Hangs there forever

Link to GitHub repository

https://github.com/asb2m10/dexed

Workflow content

name: dexed-pipeline

on:
  push:
    branches: [ master ]
    tags:
      - '*'
  pull_request:
    branches: [ master ]

jobs:
  build-linux:
    runs-on: ubuntu-latest

    steps:
    - name: Install Dexed Dependencies
      if: runner.os == 'Linux'
      run: |
        sudo apt-get update && sudo apt install libasound2-dev libx11-dev libxinerama-dev libxext-dev libfreetype6-dev libwebkit2gtk-4.0-dev libglu1-mesa-dev ccache xvfb libjack-dev
        sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10
        sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 10

    - uses: actions/checkout@v4
      with:
         submodules: recursive

    - name: Set build type
      shell: bash
      run: |
        if [ "$GITHUB_REF_TYPE" == "tag" ]; then
            echo "BUILD_TYPE=Release" >> "$GITHUB_ENV"
            echo "BUILD_VERSION=${GITHUB_REF_NAME:1}" >> "$GITHUB_ENV"
        else
            echo "BUILD_TYPE=Debug" >> "$GITHUB_ENV"
            echo "BUILD_VERSION=DEVBUILD" >> "$GITHUB_ENV"
        fi
        echo "BUILD PARM =========="
        cat $GITHUB_ENV

    - name: Build
      run: |
        cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} -DCMAKE_CXX_FLAGS=-DDEXED_ID=${{ env.BUILD_VERSION }}
        cmake --build ${{github.workspace}}/build --config ${{ env.BUILD_TYPE }}

    - name: Show
      run: ls -lR ${{github.workspace}}/build

    - name: Upload
      uses: actions/upload-artifact@v4
      with:
        name: linux-bin
        path: |
          ${{github.workspace}}/build/Source/*_artefacts/${{env.BUILD_TYPE}}/VST3/*.vst3/**
          ${{github.workspace}}/build/Source/*_artefacts/${{env.BUILD_TYPE}}/CLAP/*.clap/**
          ${{github.workspace}}/build/Source/*_artefacts/${{env.BUILD_TYPE}}/Standalone/*

  build-macos:
    runs-on: macos-latest

    steps:
    - uses: actions/checkout@v4
      with:
         submodules: recursive

    - name: Set build type
      shell: bash
      run: |
        if [ "$GITHUB_REF_TYPE" == "tag" ]; then
            echo "BUILD_TYPE=Release" >> "$GITHUB_ENV"
            echo "BUILD_VERSION=${GITHUB_REF_NAME:1}" >> "$GITHUB_ENV"
        else
            echo "BUILD_TYPE=Debug" >> "$GITHUB_ENV"
            echo "BUILD_VERSION=DEVBUILD" >> "$GITHUB_ENV"
        fi
        echo "BUILD PARM =========="
        cat $GITHUB_ENV

    - name: Build
      run: |
        sudo xcode-select -s '/Applications/Xcode_15.4.app/Contents/Developer'
        cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} -DCMAKE_CXX_FLAGS=-DDEXED_ID=${{ env.BUILD_VERSION }}
        cmake --build ${{github.workspace}}/build --config ${{ env.BUILD_TYPE }}

    - name: Show
      run: ls -lR ${{github.workspace}}/build

    - name: Upload
      uses: actions/upload-artifact@v4
      with:
        name: macos-bin
        path: |
          ${{github.workspace}}/build/Source/*_artefacts/${{env.BUILD_TYPE}}/VST3/*.vst3/**
          ${{github.workspace}}/build/Source/*_artefacts/${{env.BUILD_TYPE}}/CLAP/*.clap/**
          ${{github.workspace}}/build/Source/*_artefacts/${{env.BUILD_TYPE}}/AU/*.component/**
          ${{github.workspace}}/build/Source/*_artefacts/${{env.BUILD_TYPE}}/Standalone/*.app/**

  build-windows:
    runs-on: windows-latest

    steps:
    - uses: actions/checkout@v4
      with:
          submodules: recursive

    - name: Set build type
      shell: bash
      run: |
        if [ "$GITHUB_REF_TYPE" == "tag" ]; then
            echo "BUILD_TYPE=Release" >> "$GITHUB_ENV"
            echo "BUILD_VERSION=${GITHUB_REF_NAME:1}" >> "$GITHUB_ENV"
        else
            echo "BUILD_TYPE=Debug" >> "$GITHUB_ENV"
            echo "BUILD_VERSION=$GITHUB_REF_NAME" >> "$GITHUB_ENV"
        fi
        echo "BUILD PARM =========="
        cat $GITHUB_ENV

    - name: Build
      run: |
          cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} -DCMAKE_CXX_FLAGS=-DDEXED_ID="${{ env.BUILD_VERSION }}"
          cmake --build ${{github.workspace}}/build --config ${{ env.BUILD_TYPE }}

    - name: Show
      shell: cmd
      run: dir /s ${{github.workspace}}\build

    - name: Upload
      uses: actions/upload-artifact@v4
      with:
        name: windows-bin
        path: |
          ${{github.workspace}}/build/Source/*_artefacts/${{ env.BUILD_TYPE }}/VST3/*.vst3/**
          ${{github.workspace}}/build/Source/*_artefacts/${{ env.BUILD_TYPE }}/CLAP/*.clap/**
          ${{github.workspace}}/build/Source/*_artefacts/${{ env.BUILD_TYPE }}/Standalone/*.exe

Relevant log output

See above

Additional information

No response

probonopd avatar May 06 '25 17:05 probonopd

The output isn't showing you the confirmation prompt for the apt install command. Use apt install -y ... to automatically accept all verification prompts.

Gipetto avatar May 08 '25 18:05 Gipetto

Makes sense - but then... the same yml is working on GitHub Actions...

probonopd avatar May 08 '25 19:05 probonopd

Apt can be configured to do this by default. The GH runners must have that configured.

I just assume that I need this everywhere for portability.

Google APT::Get::Assume-Yes

Gipetto avatar May 09 '25 01:05 Gipetto

Thank you very much @Gipetto - would it be possible for act to configure the containers it spins up in the same way as the GH runners are configured? That way, most GH Actions would run 1:1 without modifications with act.

probonopd avatar May 09 '25 06:05 probonopd

Generally I would expect anyone to assume standard apt configuration, but this specific option should be mostly harmless so it can be added.

panekj avatar May 09 '25 07:05 panekj