Code Monkey home page Code Monkey logo

buildkite-plugin-tester's People

Contributors

amukherjeetwilio avatar frankpengau avatar harrietgrace avatar lox avatar nithyaasworld avatar nsuma8989 avatar pzeballos avatar renovate-bot avatar renovate[bot] avatar tomowatt avatar toolmantim avatar toote avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

buildkite-plugin-tester's Issues

Where is load.bash?

I would like to run bats outside of Docker, which I find to be finicky and can never remember the start commands, but it's not clear where to find load.bash.

Error: BATS_TMPDIR (/tmp) is not writable

Error Message: Error: BATS_TMPDIR (/tmp) is not writable🚨 Error: The command exited with status 1

Docker-in-Docker (dind) problem, when trying to use the buildkite-plugins/docker-buildkite-plugin with the docker image generated by this repository (buildkite-plugins/buildkite-plugin-tester) for buildkite/plugin-tester

Related to new sys call (faccessat2) introduced in Linux Kernel v5.8 returning error code EPERM instead of ENOSYS, affects glibc, runc, seccomp/libseccomp, moby...etc.

PR Raised to fix problem: #55

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

File: renovate.json
Error type: The renovate configuration file contains some invalid settings
Message: Invalid configuration option: docker-compose.pinDependencies

bats-mock: `*` pattern no longer works

Issue

the stub command from the bats-mock library is normally able to take the * to denote that the stub will handle any arguments for the given command/binary that's being stubbed. This functionality is no longer usable, as the * now globs files present in the working directory.

Example invocation:

stub buildkite-agent "* : exit 0"

Example output:

 bats-mock(buildkite-agent): got buildkite-agent annotate --style error failed to run uname<br /> --context trivy-scan                                                                                                                                                                                                  16/30
bats-mock(buildkite-agent): patterns  [7] = 'LICENSE' 'Makefile' 'README.md' 'hooks' 'plugin.yml' 'renovate.json' 'tests'
bats-mock(buildkite-agent): arguments [6] = 'annotate' '--style' 'error' 'failed\ to\ run\ uname\<br\ /\>' '--context' 'trivy-scan'
bats-mock(buildkite-agent): match failed at idx 0, expected 'LICENSE', got 'annotate'
bats-mock(buildkite-agent): result 1
bats-mock(buildkite-agent): unstubbing

Expected behavior

Using the following format should stub the command with any given number of parameters:

stub <command> "* : <stub command>"

Broken since

buildkite plugin-tester v3.0.0

Note that it's still broken in v3.0.1

Worked in

buildkite plugin-tester v2.0.0

Broke our build

We used to have this:

# https://github.com/buildkite-plugins/buildkite-plugin-tester
load "$BATS_PATH/load.bash"

However, at least one of our agents downloaded a new version of the buildkite/plugin-tester image, which no longer loads load.bash:

bats: /load.bash does not exist

So I read through the README and found that this has been changed to BATS_PLUGIN_PATH, and now I am getting the opposite issue, on another agent that cached an older version of plugin-tester.

bats: /load.bash does not exist

Updating our plugin's tests has been a super finicky process. It would be nice if things that aren't usually expected to break - images - didn't cause more unexpected failures.

Release 4 break stub/unstub in bats-mock

I had to fix my version to v3.0.1 as v.4.0.1 didn't allows me to stub anymore the buildkite-agent

Unfortunately, when looking at v3.0.1...v4.0.0 I can see the new source https://github.com/buildkite-plugins/bats-mock/archive/v2.1.0.tar.gz but it is not visible publicly. So I have no idea of the change required. The doc is also referencing the original repo too.

I don't expect any breaking changes with stub therefore.

Sample Bat tests

https://github.com/iress/junit-slack-notification-buildkite-plugin/blob/main/tests/command.bats

Output running v4.0.0

image

affected code

stub buildkite-agent 'artifact download : echo Download artifacts'
unstub buildkite-agent

Workaround:

fixed version - https://github.com/iress/junit-slack-notification-buildkite-plugin/pull/9/files

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

This repository currently has no open or pending branches.

Detected dependencies

buildkite
.buildkite/pipeline.deploy.yml
  • docker-compose v4.11.0
  • docker-login v2.1.0
  • docker-compose v4.11.0
  • docker-login v2.1.0
  • docker-compose v4.11.0
.buildkite/pipeline.yml
  • docker-compose v4.11.0
docker-compose
docker-compose.yml
dockerfile
Dockerfile
  • bats/bats 1.9.0-no-faccessat2@sha256:ebe8ebd3138b293af3b3d648ad703951cf22dbdd7ebc0cf80022f5140a65177d

  • Check this box to trigger a request for Renovate to run again on this repository

Issue fixed in #17, but master docker image failing

Hey! We're hitting the issues that were fixed in #17 - but it looks like the docker image has not been released yet. The badge in the README.md indicates that the build might be failing!

Just thought we'd pass that along! ^_^
Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.