diff --git a/.circleci/config.yml b/.circleci/config.yml index 880020e..b2db890 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -61,29 +61,6 @@ jobs: - bundle_install: key: << parameters.ruby >> - run: bundle exec rake test - spec_legacy_ruby: - parameters: - ruby: - description: "Ruby version number" - default: "1.9" - type: string - sshkit: - description: "sshkit version number" - default: "1.6.1" - type: string - executor: - name: ruby - version: << parameters.ruby >> - steps: - - checkout - - run: | - echo "export sshkit=<< parameters.sshkit >>" >> $BASH_ENV - if [ "<< parameters.ruby >>" == "1.9" ]; then - echo "export RUBYOPT=-Ku" >> $BASH_ENV - fi - - bundle_install: - key: << parameters.ruby >>-<< parameters.sshkit >> - - run: bundle exec rake test workflows: version: 2 @@ -102,31 +79,12 @@ workflows: - "3.1" - "3.2" - "3.3" - - spec_legacy_ruby: - matrix: &legacy_ruby_matrix - parameters: - ruby: - - "1.9" - - "2.0" - - "2.1" - - "2.2" - - "2.3" - sshkit: - - "1.6.1" - - "1.7.1" - - master - exclude: - - ruby: "1.9" - sshkit: master cron-workflow: jobs: - rubocop - spec: matrix: <<: *matrix - - spec_legacy_ruby: - matrix: - <<: *legacy_ruby_matrix triggers: - schedule: cron: "0 13 * * 6" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..ebe4a31 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,54 @@ +name: CI +on: + pull_request: + push: + branches: + - main +jobs: + spec_legacy_ruby_19: + name: "Test / Ruby 1.9 / SSHKit ${{ matrix.sshkit }}" + runs-on: ubuntu-20.04 + strategy: + matrix: + sshkit: ["1.6.1", "1.7.1"] + env: + sshkit: ${{ matrix.sshkit }} + RUBYOPT: "-Ku" + steps: + - uses: actions/checkout@v4 + - uses: ruby/setup-ruby@v1 + with: + ruby-version: "1.9" + rubygems: "2.6.9" + bundler: "1.17.3" + bundler-cache: true + - run: bundle exec rake test + spec_legacy_ruby: + name: "Test / Ruby ${{ matrix.ruby }} / SSHKit ${{ matrix.sshkit }}" + runs-on: ubuntu-20.04 + strategy: + matrix: + ruby: ["2.0", "2.0", "2.1", "2.2", "2.3"] + sshkit: ["1.6.1", "1.7.1", "master"] + env: + sshkit: ${{ matrix.sshkit }} + steps: + - uses: actions/checkout@v4 + - uses: ruby/setup-ruby@v1 + with: + ruby-version: ${{ matrix.ruby }} + bundler: "1.17.3" + bundler-cache: true + - run: bundle exec rake test + spec_all: + name: "Test / Ruby (All)" + runs-on: ubuntu-latest + needs: [spec_legacy_ruby, spec_legacy_ruby_19] + if: always() + steps: + - name: All tests ok + if: ${{ !(contains(needs.*.result, 'failure')) }} + run: exit 0 + - name: Some tests failed + if: ${{ contains(needs.*.result, 'failure') }} + run: exit 1 diff --git a/lib/airbrussh/console.rb b/lib/airbrussh/console.rb index 3da1e81..5394ea7 100644 --- a/lib/airbrussh/console.rb +++ b/lib/airbrussh/console.rb @@ -62,7 +62,7 @@ def strip_ascii_color(string) def console_width width = case (truncate = config.truncate) when :auto - IO.console.winsize.last if @output.tty? + IO.console.winsize.last if @output.tty? && IO.console when Integer truncate end