Home Quick start All builds News Donations
More
Log In
Light Theme Docs
Workers

SparrowCI Report - gh-melezhik-Terminal-ReadKey | [image: melezhik/sparrow:debian]

  • Summary
  • Pipeline YAML
  • Report
BuildID: 2604
Status: OK
Image: melezhik/sparrow:debian
Worker status: OK
---
Date: 14.01.2023 @ 00:39
Time elapsed: 269 sec
---
SCM: https://github.com/melezhik/Terminal-ReadKey.git
Git sha: 3886f59
Git comment: Update sparrow.yaml
image:
  - melezhik/sparrow:debian
tasks:
  -
    name: main
    default: true
    language: Raku
    code: |
      use Text::Table::Simple;
      my @columns = ("Rakudo Version", "Status", "Time", "Linux Dist");
      my @rows;
      my $fail = False;
      for config()<tasks><test-multi-versions><state><> -> $i {
        @rows.push: [ $i<version>, $i<status>,  $i<time>, os() ];
        $fail = True unless $i<status> eq "OK";
      }
      my @table = lol2table(@columns,@rows);
      .say for @table;
      die "some tests failed" if $fail == True;
    depends:
      -
        name: test-multi-versions
  -
    name: test-multi-versions
    language: Raku
    hub:
      language: Raku
      code: |
        update_state %(
          list => [
            { config => { version => "2022.07" } },
            { config => { version => "2022.12" } },
          ]
        )
    code: |
        my $v = config()<version>;
        my $s = %( version => $v );
        if "{cache_root_dir()}/{$v}_ok".IO ~~ :e {
          $s<status> = "OK";
        } else {
          $s<status> = "FAIL";
        }
        if "{cache_root_dir()}/{$v}_time".IO ~~ :e {
          $s<time> = "{cache_root_dir()}/{$v}_time".IO.slurp();
        } else {
          $s<time> = "NA";
        }
        update_state $s;
    init: |
      run_task "test"; 
    subtasks:
      -
        name: test        
        language: Bash
        init: |
          ignore_error
        code: |
          set -e
          version=$(config version)
          echo "Linux version: $os"
          curl -sL https://rakudo.org/dl/rakudo/rakudo-moar-$version-01-linux-x86_64-gcc.tar.gz \
          -o rakudo-moar-$version-01-linux-x86_64-gcc.tar.gz
          tar -xzf rakudo-moar-$version-01-linux-x86_64-gcc.tar.gz          
          eval "$(rakudo-moar-$version-01-linux-x86_64-gcc/scripts/set-env.sh)"

          which raku
          which zef

          raku --version
          zef --version

          cd source/

          zef install . --deps-only --test-depends --build-depends --/test -to=home         
          /usr/bin/time -f "%E real,%U user,%S sys | CPU Percentage: %P" -o "${cache_root_dir}/${version}_time" \
          zef test --debug . && touch "${cache_root_dir}/${version}_ok"          

    depends:
      -
        name: install-deps
  -
    name: install-deps
    language: Bash
    code: |
      sudo apt-get install -y time 
      zef install --/test Text::Table::Simple
00:36:45 :: [repository] - index updated from https://sparrowhub.io/repo/api/v1/index
run stage: run
[task run: task.bash - tasks/install-deps]
[dump code: task.bash]
[1] sudo apt-get install -y time 
[2] zef install --/test Text::Table::Simple
[3] 
[task stdout]
00:36:49 :: Reading package lists...
00:36:49 :: Building dependency tree...
00:36:49 :: Reading state information...
00:36:49 :: The following NEW packages will be installed:
00:36:49 ::   time
00:36:49 :: 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
00:36:49 :: Need to get 50.8 kB of archives.
00:36:49 :: After this operation, 132 kB of additional disk space will be used.
00:36:49 :: Get:1 http://deb.debian.org/debian bullseye/main amd64 time amd64 1.9-0.1 [50.8 kB]
00:36:50 :: Fetched 50.8 kB in 0s (2492 kB/s)
00:36:50 :: Selecting previously unselected package time.
00:36:50 :: (Reading database ... 
00:36:50 :: (Reading database ... 5%
00:36:50 :: (Reading database ... 10%
00:36:50 :: (Reading database ... 15%
00:36:50 :: (Reading database ... 20%
00:36:50 :: (Reading database ... 25%
00:36:50 :: (Reading database ... 30%
00:36:50 :: (Reading database ... 35%
00:36:50 :: (Reading database ... 40%
00:36:50 :: (Reading database ... 45%
00:36:50 :: (Reading database ... 50%
00:36:50 :: (Reading database ... 55%
00:36:50 :: (Reading database ... 60%
00:36:50 :: (Reading database ... 65%
00:36:50 :: (Reading database ... 70%
00:36:50 :: (Reading database ... 75%
00:36:50 :: (Reading database ... 80%
00:36:50 :: (Reading database ... 85%
00:36:50 :: (Reading database ... 90%
00:36:50 :: (Reading database ... 95%
00:36:50 :: (Reading database ... 100%
00:36:50 :: (Reading database ... 19016 files and directories currently installed.)
00:36:50 :: Preparing to unpack .../time_1.9-0.1_amd64.deb ...
00:36:50 :: Unpacking time (1.9-0.1) ...
00:36:50 :: Setting up time (1.9-0.1) ...
00:36:52 :: ===> Searching for: Text::Table::Simple
00:37:06 :: ===> Installing: Text::Table::Simple:ver<0.1.0>:auth<github:ugexe>
[task stderr]
00:37:06 :: debconf: delaying package configuration, since apt-utils is not installed
00:37:06 :: ===> Updating fez mirror: https://360.zef.pm/
00:37:06 :: ===> Updated fez mirror: https://360.zef.pm/
00:37:06 :: ===> Updating rea mirror: https://raw.githubusercontent.com/Raku/REA/main/META.json
00:37:06 :: ===> Updated rea mirror: https://raw.githubusercontent.com/Raku/REA/main/META.json
00:38:50 :: [repository] - index updated from https://sparrowhub.io/repo/api/v1/index
run stage: run
[task run: task.bash - tasks/install-deps]
[dump code: task.bash]
[1] sudo apt-get install -y time 
[2] zef install --/test Text::Table::Simple
[3] 
[task stdout]
00:38:55 :: Reading package lists...
00:38:56 :: Building dependency tree...
00:38:56 :: Reading state information...
00:38:56 :: time is already the newest version (1.9-0.1).
00:38:56 :: 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
00:38:58 :: No reason to proceed. Use --force-install to continue anyway
[task stderr]
00:38:58 :: All candidates are currently installed
00:36:23 :: [repository] - index updated from https://sparrowhub.io/repo/api/v1/index
run stage: run
[task run: task.raku - tasks/test-multi-versions-hub]
[dump code: task.raku]
[1] update_state %(
[2]   list => [
[3]     { config => { version => "2022.07" } },
[4]     { config => { version => "2022.12" } },
[5]   ]
[6] )
[7] 
[task stdout]
[task run: task.bash - tasks/test-multi-versions]
[dump code: task.bash]
[1] set -e
[2] version=$(config version)
[3] echo "Linux version: $os"
[4] curl -sL https://rakudo.org/dl/rakudo/rakudo-moar-$version-01-linux-x86_64-gcc.tar.gz \
[5] -o rakudo-moar-$version-01-linux-x86_64-gcc.tar.gz
[6] tar -xzf rakudo-moar-$version-01-linux-x86_64-gcc.tar.gz          
[7] eval "$(rakudo-moar-$version-01-linux-x86_64-gcc/scripts/set-env.sh)"
[8] 
[9] which raku
[10] which zef
[11] 
[12] raku --version
[13] zef --version
[14] 
[15] cd source/
[16] 
[17] zef install . --deps-only --test-depends --build-depends --/test -to=home         
[18] /usr/bin/time -f "%E real,%U user,%S sys | CPU Percentage: %P" -o "${cache_root_dir}/${version}_time" \
[19] zef test --debug . && touch "${cache_root_dir}/${version}_ok"          
[20] 
[task stdout]
00:37:12 :: Linux version: debian
00:37:15 ::                            Adding Rakudo to PATH
00:37:15 ::                           =======================
00:37:15 :: 
00:37:15 :: Paths successfully added.
00:37:15 :: 
00:37:15 :: ================================================================================
00:37:15 ::  =========                                                             __   __
00:37:15 ::   ||_|_||                =============================                (  \,/  )
00:37:15 ::   || # ||                 Welcome to the Raku Console                  \_ O _/
00:37:15 ::   || # ||                =============================                 (_/ \_)
00:37:15 :: 
00:37:15 :: This console has all the tools available you need to get started using Raku.
00:37:15 :: 
00:37:15 :: Rakudo provides an interactive command line interpreter (a so called Read Eval
00:37:15 :: Print Loop, REPL for short) you can use to quickly try out pieces of Raku code.
00:37:15 :: Start it by typing:
00:37:15 :: 
00:37:15 ::     raku
00:37:15 :: 
00:37:15 :: If you already have a Raku program in a file, you can run it by typing:
00:37:15 :: 
00:37:15 ::     raku path/to/my/program.raku
00:37:15 :: 
00:37:15 :: To install additional modules you can use the Zef module manager:
00:37:15 :: 
00:37:15 ::     zef install Some::Module
00:37:15 :: 
00:37:15 :: https://rakudo.org/           - The home of this implementation of Raku.
00:37:15 :: https://raku.land/            - Go here to browse for Raku modules.
00:37:15 :: https://docs.raku.org/        - The Raku documentation.
00:37:15 :: https://web.libera.chat/#raku - The Raku user chat. Talk to us!
00:37:15 :: 
00:37:15 ::                               Happy hacking!
00:37:15 :: 
00:37:15 :: ================================================================================
00:37:15 :: 
00:37:15 :: /var/.sparrowdo/env/main/.sparrowdo/rakudo-moar-2022.07-01-linux-x86_64-gcc/bin/raku
00:37:15 :: /var/.sparrowdo/env/main/.sparrowdo/rakudo-moar-2022.07-01-linux-x86_64-gcc/share/perl6/site/bin/zef
00:37:15 :: Welcome to Rakudo™ v2022.07.
00:37:15 :: Implementing the Raku® Programming Language v6.d.
00:37:15 :: Built on MoarVM version 2022.07.
00:37:41 :: v0.14.5
00:38:00 :: ===> Searching for missing dependencies: Term::termios, Test::Mock
00:38:35 :: ===> Searching for missing dependencies: LibraryMake, OO::Monitors
00:38:35 :: ===> Searching for missing dependencies: Shell::Command
00:38:35 :: ===> Searching for missing dependencies: File::Which, File::Find
00:38:35 :: ===> Building: Term::termios
00:38:35 :: ===> Building [OK] for Term::termios
00:38:35 :: ===> Installing: File::Which:ver<1.0.4>
00:38:35 :: ===> Installing: File::Find:ver<0.1.1>
00:38:35 :: ===> Installing: Shell::Command
00:38:35 :: ===> Installing: LibraryMake:ver<1.0.0>
00:38:35 :: ===> Installing: Term::termios
00:38:35 :: ===> Installing: OO::Monitors:ver<1.1.1>
00:38:35 :: ===> Installing: Test::Mock:ver<1.6>:auth<zef:jnthn>
00:38:37 :: ===> Testing: Terminal::ReadKey:ver<0.0.2>:auth<zef:thundergnat>
00:38:41 :: [Terminal::ReadKey] Testing with plugin: Zef::Service::Shell::prove+{<anon|1>}
00:38:41 :: [Terminal::ReadKey] t/01-basic.rakutest ............ 
00:38:41 :: [Terminal::ReadKey] ok 1 - replace me
00:38:41 :: [Terminal::ReadKey] 1..1
00:38:41 :: [Terminal::ReadKey] ok
00:38:41 :: [Terminal::ReadKey] t/99-bug-return-type.rakutest .. 
00:38:41 :: [Terminal::ReadKey] 1..3
00:38:41 :: [Terminal::ReadKey] ok 1 - with-termios lives
00:38:41 :: [Terminal::ReadKey] ok 2 - called getattr
00:38:41 :: [Terminal::ReadKey] ok 3 - called setattr
00:38:41 :: [Terminal::ReadKey] ok
00:38:41 :: [Terminal::ReadKey] All tests successful.
00:38:41 :: [Terminal::ReadKey] Files=2, Tests=4,  4 wallclock secs ( 0.02 usr  0.01 sys +  6.09 cusr  0.33 csys =  6.45 CPU)
00:38:41 :: [Terminal::ReadKey] Result: PASS
00:38:41 :: ===> Testing [OK] for Terminal::ReadKey:ver<0.0.2>:auth<zef:thundergnat>
[task run: task.raku - tasks/test-multi-versions]
[dump code: task.raku]
[1] my $v = config()<version>;
[2] my $s = %( version => $v );
[3] if "{cache_root_dir()}/{$v}_ok".IO ~~ :e {
[4]   $s<status> = "OK";
[5] } else {
[6]   $s<status> = "FAIL";
[7] }
[8] if "{cache_root_dir()}/{$v}_time".IO ~~ :e {
[9]   $s<time> = "{cache_root_dir()}/{$v}_time".IO.slurp();
[10] } else {
[11]   $s<time> = "NA";
[12] }
[13] update_state $s;
[14] 
[task stdout]
[task run: task.bash - tasks/test-multi-versions]
[dump code: task.bash]
[1] set -e
[2] version=$(config version)
[3] echo "Linux version: $os"
[4] curl -sL https://rakudo.org/dl/rakudo/rakudo-moar-$version-01-linux-x86_64-gcc.tar.gz \
[5] -o rakudo-moar-$version-01-linux-x86_64-gcc.tar.gz
[6] tar -xzf rakudo-moar-$version-01-linux-x86_64-gcc.tar.gz          
[7] eval "$(rakudo-moar-$version-01-linux-x86_64-gcc/scripts/set-env.sh)"
[8] 
[9] which raku
[10] which zef
[11] 
[12] raku --version
[13] zef --version
[14] 
[15] cd source/
[16] 
[17] zef install . --deps-only --test-depends --build-depends --/test -to=home         
[18] /usr/bin/time -f "%E real,%U user,%S sys | CPU Percentage: %P" -o "${cache_root_dir}/${version}_time" \
[19] zef test --debug . && touch "${cache_root_dir}/${version}_ok"          
[20] 
[task stdout]
00:39:06 :: Linux version: debian
00:39:07 ::                            Adding Rakudo to PATH
00:39:07 ::                           =======================
00:39:07 :: 
00:39:07 :: Paths successfully added.
00:39:07 :: 
00:39:07 :: ================================================================================
00:39:07 ::  =========                                                             __   __
00:39:07 ::   ||_|_||                =============================                (  \,/  )
00:39:07 ::   || # ||                 Welcome to the Raku Console                  \_ O _/
00:39:07 ::   || # ||                =============================                 (_/ \_)
00:39:07 :: 
00:39:07 :: This console has all the tools available you need to get started using Raku.
00:39:07 :: 
00:39:07 :: Rakudo provides an interactive command line interpreter (a so called Read Eval
00:39:07 :: Print Loop, REPL for short) you can use to quickly try out pieces of Raku code.
00:39:07 :: Start it by typing:
00:39:07 :: 
00:39:07 ::     raku
00:39:07 :: 
00:39:07 :: If you already have a Raku program in a file, you can run it by typing:
00:39:07 :: 
00:39:07 ::     raku path/to/my/program.raku
00:39:07 :: 
00:39:07 :: To install additional modules you can use the Zef module manager:
00:39:07 :: 
00:39:07 ::     zef install Some::Module
00:39:07 :: 
00:39:07 :: https://rakudo.org/           - The home of this implementation of Raku.
00:39:07 :: https://raku.land/            - Go here to browse for Raku modules.
00:39:07 :: https://docs.raku.org/        - The Raku documentation.
00:39:07 :: https://web.libera.chat/#raku - The Raku user chat. Talk to us!
00:39:07 :: 
00:39:07 ::                               Happy hacking!
00:39:07 :: 
00:39:07 :: ================================================================================
00:39:07 :: 
00:39:07 :: /var/.sparrowdo/env/main/.sparrowdo/rakudo-moar-2022.12-01-linux-x86_64-gcc/bin/raku
00:39:07 :: /var/.sparrowdo/env/main/.sparrowdo/rakudo-moar-2022.12-01-linux-x86_64-gcc/share/perl6/site/bin/zef
00:39:07 :: Welcome to Rakudo™ v2022.12.
00:39:07 :: Implementing the Raku® Programming Language v6.d.
00:39:07 :: Built on MoarVM version 2022.12.
00:39:08 :: v0.14.5
00:39:14 :: ===> Testing: Terminal::ReadKey:ver<0.0.2>:auth<zef:thundergnat>
00:39:23 :: [Terminal::ReadKey] Testing with plugin: Zef::Service::Shell::prove+{<anon|1>}
00:39:23 :: [Terminal::ReadKey] t/01-basic.rakutest ............ 
00:39:23 :: [Terminal::ReadKey] ok 1 - replace me
00:39:23 :: [Terminal::ReadKey] 1..1
00:39:23 :: [Terminal::ReadKey] ok
00:39:23 :: [Terminal::ReadKey] t/99-bug-return-type.rakutest .. 
00:39:23 :: [Terminal::ReadKey] 1..3
00:39:23 :: [Terminal::ReadKey] ok 1 - with-termios lives
00:39:23 :: [Terminal::ReadKey] ok 2 - called getattr
00:39:23 :: [Terminal::ReadKey] ok 3 - called setattr
00:39:23 :: [Terminal::ReadKey] ok
00:39:23 :: [Terminal::ReadKey] All tests successful.
00:39:23 :: [Terminal::ReadKey] Files=2, Tests=4,  9 wallclock secs ( 0.03 usr  0.00 sys + 13.55 cusr  0.78 csys = 14.36 CPU)
00:39:23 :: [Terminal::ReadKey] Result: PASS
00:39:23 :: ===> Testing [OK] for Terminal::ReadKey:ver<0.0.2>:auth<zef:thundergnat>
[task stderr]
00:39:23 :: All candidates are currently installed
[task run: task.raku - tasks/test-multi-versions]
[dump code: task.raku]
[1] my $v = config()<version>;
[2] my $s = %( version => $v );
[3] if "{cache_root_dir()}/{$v}_ok".IO ~~ :e {
[4]   $s<status> = "OK";
[5] } else {
[6]   $s<status> = "FAIL";
[7] }
[8] if "{cache_root_dir()}/{$v}_time".IO ~~ :e {
[9]   $s<time> = "{cache_root_dir()}/{$v}_time".IO.slurp();
[10] } else {
[11]   $s<time> = "NA";
[12] }
[13] update_state $s;
[14] 
[task stdout]
00:35:58 :: [repository] - index updated from https://sparrowhub.io/repo/api/v1/index
run stage: run
source directory does not yet exist, download source archive from storage
00:36:02 :: [repository] - installing pack-unpack, version 0.000001
[task run: task.bash - unpack source archive]
[dump code: task.bash]
[1] set -e
[2] 
[3] file=$(config file)
[4] dir=$(config dir)
[5] 
[6] echo "tar -xzf $file "
[7] 
[8] tar -xzf $file
[9] 
[10] if test $dir; then
[11]   ls -l $dir
[12] fi
[13] 
[14] 
[task stdout]
00:36:06 :: tar -xzf source.tar.gz 
[task run: task.raku - tasks/main]
[dump code: task.raku]
[1] use Text::Table::Simple;
[2] my @columns = ("Rakudo Version", "Status", "Time", "Linux Dist");
[3] my @rows;
[4] my $fail = False;
[5] for config()<tasks><test-multi-versions><state><> -> $i {
[6]   @rows.push: [ $i<version>, $i<status>,  $i<time>, os() ];
[7]   $fail = True unless $i<status> eq "OK";
[8] }
[9] my @table = lol2table(@columns,@rows);
[10] .say for @table;
[11] die "some tests failed" if $fail == True;
[12] 
[task stdout]
00:39:27 :: O----------------O--------O---------------------------------------------------------O------------O
00:39:27 :: | Rakudo Version | Status | Time                                                    | Linux Dist |
00:39:27 :: O================O========O=========================================================O============O
00:39:27 :: | 2022.07        | OK     | 0:06.01 real,8.76 user,0.70 sys | CPU Percentage: 157%  | debian     |
00:39:27 :: | 2022.12        | OK     | 0:10.99 real,16.26 user,1.21 sys | CPU Percentage: 159% | debian     |
00:39:27 :: --------------------------------------------------------------------------------------------------