Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

don't run deploy bot on dependabot PRs #1924

Merged
merged 3 commits into from
Aug 20, 2018
Merged

Conversation

chris48s
Copy link
Member

refs #1827

This should do what we want, but I'm not sure how to test it. @platan - do you have any advice on how to check it locally?

@chris48s chris48s changed the title don't run deploy bot on dependabot PRs WIP don't run deploy bot on dependabot PRs Aug 15, 2018
@shields-ci
Copy link

Messages
📖

✨ Thanks for your contribution to Shields, @chris48s!

Generated by 🚫 dangerJS

@paulmelnikow
Copy link
Member

I don't mind you merging it to find out! We can either trigger another Dependabot run or wait for it.

@paulmelnikow paulmelnikow added the developer-experience Dev tooling, test framework, and CI label Aug 16, 2018
@platan
Copy link
Member

platan commented Aug 16, 2018

I'll prepare an instruction how to test it tomorrow.

@platan
Copy link
Member

platan commented Aug 17, 2018

We can test it manually or create a unit tests.

Manual test using https://probot.github.io/docs/simulating-webhooks/

  1. First you have to create a test GitHub app
  2. Create a test repo. It have to contains a file .github/probot.js with a content
    include('chris48s/shields:.github/probot.js#issue1827'); or with a content of the .github/probot.js from this PR
  3. Now you have to install this app in this repo, create a PR and close (merge) this pr in this test repo
  4. Clone https://github.com/bkeepers/workflow and go to the directory with this repo
  5. Go to Advanced section (https://github.com/settings/apps/YOUR_APP_NAME/advanced) of your app and copy a payload of the last delivery (should stars with "action": "closed") and save it to a file (e.g. pr-closed.json)
  6. Move private key to directory with workflow clone
  7. Simulate event delivery:
APP_ID=YOUR_APP_ID LOG_LEVEL=trace ~/node_modules/.bin/probot simulate pull_request pr-closed.json ./index.js

Now you should see this in the logs:

14:08:45.470Z DEBUG github: GitHub request: POST /repos/:owner/:repo/issues/:number/comments - 201 Created (installation=290126)
  params: {
    "number": 15,
    "owner": "platan",
    "repo": "shields-deployment-status-example",
    "body": "This pull request was merged to [master](https://github.com/platan/shields-deployment-status-example/tree/master) branch. Now this change is waiting for deployment. \nDeploys usually happen every few weeks. After deployment changes are copied to [gh-pages](https://github.com/platan/shields-deployment-status-example/tree/gh-pages) branch. \n\nThis badge displays deployment status:\n![](https://img.shields.io/github/commit-status/platan/shields-deployment-status-example/gh-pages/f47ae85142253204333fc3b348595ccb7da8b361.svg?label=deploy%20status)",
    "baseUrl": "https://api.github.com",
    "request": {
      "timeout": 0
    }
  }

This will create an extra comment in closed pr.
Now change .pull_request.head.ref value in pr-closed.json to dependabot/test and run probot simulate again. Now we have 14:09:09.125Z INFO event: Filter have rejected the event in logs.

Manual testing

Alternatively we can install https://github.com/apps/shields-deployment in some repo and use include('chris48s/shields:.github/probot.js#issue1827'); to load configuration from this pr (documentation: https://github.com/bkeepers/workflow/blob/master/docs/configuration.md#include). Creating and merging a new pr will test that old flow works. We can install dependabot in this test repo to see if filtering works.

Unit test

Based on https://github.com/bkeepers/workflow/blob/master/test/index.js (documentation: https://probot.github.io/docs/testing/ I've prepared a unit test for our config: https://github.com/platan/shields-workflow-config-test/blob/master/config.test.js#L49

All these approaches does not require private key from https://github.com/apps/shields-deployment. With this private key and probot simulate testing would be easier :-)

@platan
Copy link
Member

platan commented Aug 17, 2018

Extra. An event from https://github.com/settings/apps/shields-deployment/advanced with closed PR made by dependabot (id feeefac0-a0cb-11e8-9705-532356462063 ):

details
{
  "action": "closed",
  "number": 1911,
  "pull_request": {
    "url": "https://api.github.com/repos/badges/shields/pulls/1911",
    "id": 207878090,
    "node_id": "MDExOlB1bGxSZXF1ZXN0MjA3ODc4MDkw",
    "html_url": "https://github.com/badges/shields/pull/1911",
    "diff_url": "https://github.com/badges/shields/pull/1911.diff",
    "patch_url": "https://github.com/badges/shields/pull/1911.patch",
    "issue_url": "https://api.github.com/repos/badges/shields/issues/1911",
    "number": 1911,
    "state": "closed",
    "locked": false,
    "title": "Bump request from 2.87.0 to 2.88.0; test on [travis chocolatey waffle]",
    "user": {
      "login": "dependabot[bot]",
      "id": 27856297,
      "node_id": "MDM6Qm90Mjc4NTYyOTc=",
      "avatar_url": "https://avatars3.githubusercontent.com/in/2141?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/dependabot%5Bbot%5D",
      "html_url": "https://github.com/apps/dependabot",
      "followers_url": "https://api.github.com/users/dependabot%5Bbot%5D/followers",
      "following_url": "https://api.github.com/users/dependabot%5Bbot%5D/following{/other_user}",
      "gists_url": "https://api.github.com/users/dependabot%5Bbot%5D/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/dependabot%5Bbot%5D/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/dependabot%5Bbot%5D/subscriptions",
      "organizations_url": "https://api.github.com/users/dependabot%5Bbot%5D/orgs",
      "repos_url": "https://api.github.com/users/dependabot%5Bbot%5D/repos",
      "events_url": "https://api.github.com/users/dependabot%5Bbot%5D/events{/privacy}",
      "received_events_url": "https://api.github.com/users/dependabot%5Bbot%5D/received_events",
      "type": "Bot",
      "site_admin": false
    },
    "body": "Bumps [request](https://github.com/request/request) from 2.87.0 to 2.88.0.\n<details>\n<summary>Changelog</summary>\n\n*Sourced from [request's changelog](https://github.com/request/request/blob/master/CHANGELOG.md).*\n\n> ## Change Log\n</details>\n<details>\n<summary>Commits</summary>\n\n- [`6420240`](https://github.com/request/request/commit/642024036379239a7fa29c27ef7bb4dd3fa3b3a4) 2.88.0\n- [`bd22e21`](https://github.com/request/request/commit/bd22e217f1590804ebfea031d158f2a486b0c985) fix: massive dependency upgrade, fixes all production vulnerabilities\n- [`925849a`](https://github.com/request/request/commit/925849a8278ae794eb9c257cf4d6cc4fb3ee89a8) Merge pull request [#2996](https://github-redirect.dependabot.com/request/request/issues/2996) from kwonoj/fix-uuid\n- [`7b68551`](https://github.com/request/request/commit/7b685511edbfdb909814473c3fccde3fb285503d) fix(uuid): import versioned uuid\n- [`5797963`](https://github.com/request/request/commit/579796327218bb6ae30440b4f25da6166f72c282) Merge pull request [#2994](https://github-redirect.dependabot.com/request/request/issues/2994) from dlecocq/oauth-sign-0.9.0\n- [`628ff5e`](https://github.com/request/request/commit/628ff5e3c9a242bb82805c368fc5b6f942d9af70) Update to oauth-sign 0.9.0\n- [`10987ef`](https://github.com/request/request/commit/10987ef9d611a0f24e340505f97c8eca119854e5) Merge pull request [#2993](https://github-redirect.dependabot.com/request/request/issues/2993) from simov/fix-header-tests\n- [`cd848af`](https://github.com/request/request/commit/cd848afbdbac78b656847c75be1c0a9daf619045) These are not going to fail if there is a server listening on those ports\n- [`a92e138`](https://github.com/request/request/commit/a92e138d897d78ce19dd70bd1ad271c7f9c6a23d) [#515](https://github-redirect.dependabot.com/request/request/issues/515), [#2894](https://github-redirect.dependabot.com/request/request/issues/2894) Strip port suffix from Host header if the protocol is known. ([#2904](https://github-redirect.dependabot.com/request/request/issues/2904))\n- [`45ffc4b`](https://github.com/request/request/commit/45ffc4b536043e85e0850edf35ba47067c0dbada) Improve AWS SigV4 support. ([#2791](https://github-redirect.dependabot.com/request/request/issues/2791))\n- Additional commits viewable in [compare view](https://github.com/request/request/compare/v2.87.0...v2.88.0)\n</details>\n<br />\n\n[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=request&package-manager=npm_and_yarn&previous-version=2.87.0&new-version=2.88.0)](https://dependabot.com/compatibility-score.html?dependency-name=request&package-manager=npm_and_yarn&previous-version=2.87.0&new-version=2.88.0)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n---\n\n<details>\n<summary>Dependabot commands and options</summary>\n<br />\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot ignore this [patch|minor|major] version` will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language\n- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language\n- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language\n- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language\n- `@dependabot badge me` will comment on this PR with code to add a \"Dependabot enabled\" badge to your readme\n\nAdditionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):\n- Update frequency (including time of day and day of week)\n- Automerge options (never/patch/minor, and dev/runtime dependencies)\n- Pull request limits (per update run and/or open at any time)\n- Out-of-range updates (receive only lockfile updates, if desired)\n- Security updates (receive only security updates, if desired)\n\nFinally, you can contact us by mentioning @dependabot.\n\n</details>",
    "created_at": "2018-08-13T06:10:23Z",
    "updated_at": "2018-08-15T20:44:25Z",
    "closed_at": "2018-08-15T20:44:24Z",
    "merged_at": "2018-08-15T20:44:24Z",
    "merge_commit_sha": "30d746653bc0b9185ab024f1e29243c3fc77c8cf",
    "assignee": null,
    "assignees": [

    ],
    "requested_reviewers": [

    ],
    "requested_teams": [

    ],
    "labels": [
      {
        "id": 1011850211,
        "node_id": "MDU6TGFiZWwxMDExODUwMjEx",
        "url": "https://api.github.com/repos/badges/shields/labels/dependencies",
        "name": "dependencies",
        "color": "0025ff",
        "default": false
      }
    ],
    "milestone": null,
    "commits_url": "https://api.github.com/repos/badges/shields/pulls/1911/commits",
    "review_comments_url": "https://api.github.com/repos/badges/shields/pulls/1911/comments",
    "review_comment_url": "https://api.github.com/repos/badges/shields/pulls/comments{/number}",
    "comments_url": "https://api.github.com/repos/badges/shields/issues/1911/comments",
    "statuses_url": "https://api.github.com/repos/badges/shields/statuses/5135273380a0adc043e95a15c98ddacb614afb20",
    "head": {
      "label": "badges:dependabot/npm_and_yarn/request-2.88.0",
      "ref": "dependabot/npm_and_yarn/request-2.88.0",
      "sha": "5135273380a0adc043e95a15c98ddacb614afb20",
      "user": {
        "login": "badges",
        "id": 6254238,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjYyNTQyMzg=",
        "avatar_url": "https://avatars2.githubusercontent.com/u/6254238?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/badges",
        "html_url": "https://github.com/badges",
        "followers_url": "https://api.github.com/users/badges/followers",
        "following_url": "https://api.github.com/users/badges/following{/other_user}",
        "gists_url": "https://api.github.com/users/badges/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/badges/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/badges/subscriptions",
        "organizations_url": "https://api.github.com/users/badges/orgs",
        "repos_url": "https://api.github.com/users/badges/repos",
        "events_url": "https://api.github.com/users/badges/events{/privacy}",
        "received_events_url": "https://api.github.com/users/badges/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 7910045,
        "node_id": "MDEwOlJlcG9zaXRvcnk3OTEwMDQ1",
        "name": "shields",
        "full_name": "badges/shields",
        "owner": {
          "login": "badges",
          "id": 6254238,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjYyNTQyMzg=",
          "avatar_url": "https://avatars2.githubusercontent.com/u/6254238?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/badges",
          "html_url": "https://github.com/badges",
          "followers_url": "https://api.github.com/users/badges/followers",
          "following_url": "https://api.github.com/users/badges/following{/other_user}",
          "gists_url": "https://api.github.com/users/badges/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/badges/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/badges/subscriptions",
          "organizations_url": "https://api.github.com/users/badges/orgs",
          "repos_url": "https://api.github.com/users/badges/repos",
          "events_url": "https://api.github.com/users/badges/events{/privacy}",
          "received_events_url": "https://api.github.com/users/badges/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "private": false,
        "html_url": "https://github.com/badges/shields",
        "description": "Concise, consistent, and legible badges in SVG and raster format",
        "fork": false,
        "url": "https://api.github.com/repos/badges/shields",
        "forks_url": "https://api.github.com/repos/badges/shields/forks",
        "keys_url": "https://api.github.com/repos/badges/shields/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/badges/shields/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/badges/shields/teams",
        "hooks_url": "https://api.github.com/repos/badges/shields/hooks",
        "issue_events_url": "https://api.github.com/repos/badges/shields/issues/events{/number}",
        "events_url": "https://api.github.com/repos/badges/shields/events",
        "assignees_url": "https://api.github.com/repos/badges/shields/assignees{/user}",
        "branches_url": "https://api.github.com/repos/badges/shields/branches{/branch}",
        "tags_url": "https://api.github.com/repos/badges/shields/tags",
        "blobs_url": "https://api.github.com/repos/badges/shields/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/badges/shields/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/badges/shields/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/badges/shields/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/badges/shields/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/badges/shields/languages",
        "stargazers_url": "https://api.github.com/repos/badges/shields/stargazers",
        "contributors_url": "https://api.github.com/repos/badges/shields/contributors",
        "subscribers_url": "https://api.github.com/repos/badges/shields/subscribers",
        "subscription_url": "https://api.github.com/repos/badges/shields/subscription",
        "commits_url": "https://api.github.com/repos/badges/shields/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/badges/shields/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/badges/shields/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/badges/shields/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/badges/shields/contents/{+path}",
        "compare_url": "https://api.github.com/repos/badges/shields/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/badges/shields/merges",
        "archive_url": "https://api.github.com/repos/badges/shields/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/badges/shields/downloads",
        "issues_url": "https://api.github.com/repos/badges/shields/issues{/number}",
        "pulls_url": "https://api.github.com/repos/badges/shields/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/badges/shields/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/badges/shields/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/badges/shields/labels{/name}",
        "releases_url": "https://api.github.com/repos/badges/shields/releases{/id}",
        "deployments_url": "https://api.github.com/repos/badges/shields/deployments",
        "created_at": "2013-01-30T07:41:54Z",
        "updated_at": "2018-08-15T20:04:51Z",
        "pushed_at": "2018-08-15T20:44:24Z",
        "git_url": "git://github.com/badges/shields.git",
        "ssh_url": "git@github.com:badges/shields.git",
        "clone_url": "https://github.com/badges/shields.git",
        "svn_url": "https://github.com/badges/shields",
        "homepage": "https://shields.io",
        "size": 10106,
        "stargazers_count": 6035,
        "watchers_count": 6035,
        "language": "JavaScript",
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": false,
        "has_pages": true,
        "forks_count": 1353,
        "mirror_url": null,
        "archived": false,
        "open_issues_count": 175,
        "license": {
          "key": "other",
          "name": "Other",
          "spdx_id": null,
          "url": null,
          "node_id": "MDc6TGljZW5zZTA="
        },
        "forks": 1353,
        "open_issues": 175,
        "watchers": 6035,
        "default_branch": "master"
      }
    },
    "base": {
      "label": "badges:master",
      "ref": "master",
      "sha": "97c6795e4ea1dcdb61d73532f28e26eebc969da7",
      "user": {
        "login": "badges",
        "id": 6254238,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjYyNTQyMzg=",
        "avatar_url": "https://avatars2.githubusercontent.com/u/6254238?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/badges",
        "html_url": "https://github.com/badges",
        "followers_url": "https://api.github.com/users/badges/followers",
        "following_url": "https://api.github.com/users/badges/following{/other_user}",
        "gists_url": "https://api.github.com/users/badges/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/badges/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/badges/subscriptions",
        "organizations_url": "https://api.github.com/users/badges/orgs",
        "repos_url": "https://api.github.com/users/badges/repos",
        "events_url": "https://api.github.com/users/badges/events{/privacy}",
        "received_events_url": "https://api.github.com/users/badges/received_events",
        "type": "Organization",
        "site_admin": false
      },
      "repo": {
        "id": 7910045,
        "node_id": "MDEwOlJlcG9zaXRvcnk3OTEwMDQ1",
        "name": "shields",
        "full_name": "badges/shields",
        "owner": {
          "login": "badges",
          "id": 6254238,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjYyNTQyMzg=",
          "avatar_url": "https://avatars2.githubusercontent.com/u/6254238?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/badges",
          "html_url": "https://github.com/badges",
          "followers_url": "https://api.github.com/users/badges/followers",
          "following_url": "https://api.github.com/users/badges/following{/other_user}",
          "gists_url": "https://api.github.com/users/badges/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/badges/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/badges/subscriptions",
          "organizations_url": "https://api.github.com/users/badges/orgs",
          "repos_url": "https://api.github.com/users/badges/repos",
          "events_url": "https://api.github.com/users/badges/events{/privacy}",
          "received_events_url": "https://api.github.com/users/badges/received_events",
          "type": "Organization",
          "site_admin": false
        },
        "private": false,
        "html_url": "https://github.com/badges/shields",
        "description": "Concise, consistent, and legible badges in SVG and raster format",
        "fork": false,
        "url": "https://api.github.com/repos/badges/shields",
        "forks_url": "https://api.github.com/repos/badges/shields/forks",
        "keys_url": "https://api.github.com/repos/badges/shields/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/badges/shields/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/badges/shields/teams",
        "hooks_url": "https://api.github.com/repos/badges/shields/hooks",
        "issue_events_url": "https://api.github.com/repos/badges/shields/issues/events{/number}",
        "events_url": "https://api.github.com/repos/badges/shields/events",
        "assignees_url": "https://api.github.com/repos/badges/shields/assignees{/user}",
        "branches_url": "https://api.github.com/repos/badges/shields/branches{/branch}",
        "tags_url": "https://api.github.com/repos/badges/shields/tags",
        "blobs_url": "https://api.github.com/repos/badges/shields/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/badges/shields/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/badges/shields/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/badges/shields/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/badges/shields/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/badges/shields/languages",
        "stargazers_url": "https://api.github.com/repos/badges/shields/stargazers",
        "contributors_url": "https://api.github.com/repos/badges/shields/contributors",
        "subscribers_url": "https://api.github.com/repos/badges/shields/subscribers",
        "subscription_url": "https://api.github.com/repos/badges/shields/subscription",
        "commits_url": "https://api.github.com/repos/badges/shields/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/badges/shields/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/badges/shields/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/badges/shields/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/badges/shields/contents/{+path}",
        "compare_url": "https://api.github.com/repos/badges/shields/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/badges/shields/merges",
        "archive_url": "https://api.github.com/repos/badges/shields/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/badges/shields/downloads",
        "issues_url": "https://api.github.com/repos/badges/shields/issues{/number}",
        "pulls_url": "https://api.github.com/repos/badges/shields/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/badges/shields/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/badges/shields/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/badges/shields/labels{/name}",
        "releases_url": "https://api.github.com/repos/badges/shields/releases{/id}",
        "deployments_url": "https://api.github.com/repos/badges/shields/deployments",
        "created_at": "2013-01-30T07:41:54Z",
        "updated_at": "2018-08-15T20:04:51Z",
        "pushed_at": "2018-08-15T20:44:24Z",
        "git_url": "git://github.com/badges/shields.git",
        "ssh_url": "git@github.com:badges/shields.git",
        "clone_url": "https://github.com/badges/shields.git",
        "svn_url": "https://github.com/badges/shields",
        "homepage": "https://shields.io",
        "size": 10106,
        "stargazers_count": 6035,
        "watchers_count": 6035,
        "language": "JavaScript",
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": false,
        "has_pages": true,
        "forks_count": 1353,
        "mirror_url": null,
        "archived": false,
        "open_issues_count": 175,
        "license": {
          "key": "other",
          "name": "Other",
          "spdx_id": null,
          "url": null,
          "node_id": "MDc6TGljZW5zZTA="
        },
        "forks": 1353,
        "open_issues": 175,
        "watchers": 6035,
        "default_branch": "master"
      }
    },
    "_links": {
      "self": {
        "href": "https://api.github.com/repos/badges/shields/pulls/1911"
      },
      "html": {
        "href": "https://github.com/badges/shields/pull/1911"
      },
      "issue": {
        "href": "https://api.github.com/repos/badges/shields/issues/1911"
      },
      "comments": {
        "href": "https://api.github.com/repos/badges/shields/issues/1911/comments"
      },
      "review_comments": {
        "href": "https://api.github.com/repos/badges/shields/pulls/1911/comments"
      },
      "review_comment": {
        "href": "https://api.github.com/repos/badges/shields/pulls/comments{/number}"
      },
      "commits": {
        "href": "https://api.github.com/repos/badges/shields/pulls/1911/commits"
      },
      "statuses": {
        "href": "https://api.github.com/repos/badges/shields/statuses/5135273380a0adc043e95a15c98ddacb614afb20"
      }
    },
    "author_association": "CONTRIBUTOR",
    "merged": true,
    "mergeable": null,
    "rebaseable": null,
    "mergeable_state": "unknown",
    "merged_by": {
      "login": "chris48s",
      "id": 6025893,
      "node_id": "MDQ6VXNlcjYwMjU4OTM=",
      "avatar_url": "https://avatars1.githubusercontent.com/u/6025893?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/chris48s",
      "html_url": "https://github.com/chris48s",
      "followers_url": "https://api.github.com/users/chris48s/followers",
      "following_url": "https://api.github.com/users/chris48s/following{/other_user}",
      "gists_url": "https://api.github.com/users/chris48s/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/chris48s/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/chris48s/subscriptions",
      "organizations_url": "https://api.github.com/users/chris48s/orgs",
      "repos_url": "https://api.github.com/users/chris48s/repos",
      "events_url": "https://api.github.com/users/chris48s/events{/privacy}",
      "received_events_url": "https://api.github.com/users/chris48s/received_events",
      "type": "User",
      "site_admin": false
    },
    "comments": 0,
    "review_comments": 0,
    "maintainer_can_modify": false,
    "commits": 1,
    "additions": 109,
    "deletions": 51,
    "changed_files": 2
  },
  "repository": {
    "id": 7910045,
    "node_id": "MDEwOlJlcG9zaXRvcnk3OTEwMDQ1",
    "name": "shields",
    "full_name": "badges/shields",
    "owner": {
      "login": "badges",
      "id": 6254238,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjYyNTQyMzg=",
      "avatar_url": "https://avatars2.githubusercontent.com/u/6254238?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/badges",
      "html_url": "https://github.com/badges",
      "followers_url": "https://api.github.com/users/badges/followers",
      "following_url": "https://api.github.com/users/badges/following{/other_user}",
      "gists_url": "https://api.github.com/users/badges/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/badges/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/badges/subscriptions",
      "organizations_url": "https://api.github.com/users/badges/orgs",
      "repos_url": "https://api.github.com/users/badges/repos",
      "events_url": "https://api.github.com/users/badges/events{/privacy}",
      "received_events_url": "https://api.github.com/users/badges/received_events",
      "type": "Organization",
      "site_admin": false
    },
    "private": false,
    "html_url": "https://github.com/badges/shields",
    "description": "Concise, consistent, and legible badges in SVG and raster format",
    "fork": false,
    "url": "https://api.github.com/repos/badges/shields",
    "forks_url": "https://api.github.com/repos/badges/shields/forks",
    "keys_url": "https://api.github.com/repos/badges/shields/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/badges/shields/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/badges/shields/teams",
    "hooks_url": "https://api.github.com/repos/badges/shields/hooks",
    "issue_events_url": "https://api.github.com/repos/badges/shields/issues/events{/number}",
    "events_url": "https://api.github.com/repos/badges/shields/events",
    "assignees_url": "https://api.github.com/repos/badges/shields/assignees{/user}",
    "branches_url": "https://api.github.com/repos/badges/shields/branches{/branch}",
    "tags_url": "https://api.github.com/repos/badges/shields/tags",
    "blobs_url": "https://api.github.com/repos/badges/shields/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/badges/shields/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/badges/shields/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/badges/shields/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/badges/shields/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/badges/shields/languages",
    "stargazers_url": "https://api.github.com/repos/badges/shields/stargazers",
    "contributors_url": "https://api.github.com/repos/badges/shields/contributors",
    "subscribers_url": "https://api.github.com/repos/badges/shields/subscribers",
    "subscription_url": "https://api.github.com/repos/badges/shields/subscription",
    "commits_url": "https://api.github.com/repos/badges/shields/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/badges/shields/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/badges/shields/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/badges/shields/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/badges/shields/contents/{+path}",
    "compare_url": "https://api.github.com/repos/badges/shields/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/badges/shields/merges",
    "archive_url": "https://api.github.com/repos/badges/shields/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/badges/shields/downloads",
    "issues_url": "https://api.github.com/repos/badges/shields/issues{/number}",
    "pulls_url": "https://api.github.com/repos/badges/shields/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/badges/shields/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/badges/shields/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/badges/shields/labels{/name}",
    "releases_url": "https://api.github.com/repos/badges/shields/releases{/id}",
    "deployments_url": "https://api.github.com/repos/badges/shields/deployments",
    "created_at": "2013-01-30T07:41:54Z",
    "updated_at": "2018-08-15T20:04:51Z",
    "pushed_at": "2018-08-15T20:44:24Z",
    "git_url": "git://github.com/badges/shields.git",
    "ssh_url": "git@github.com:badges/shields.git",
    "clone_url": "https://github.com/badges/shields.git",
    "svn_url": "https://github.com/badges/shields",
    "homepage": "https://shields.io",
    "size": 10106,
    "stargazers_count": 6035,
    "watchers_count": 6035,
    "language": "JavaScript",
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": false,
    "has_pages": true,
    "forks_count": 1353,
    "mirror_url": null,
    "archived": false,
    "open_issues_count": 175,
    "license": {
      "key": "other",
      "name": "Other",
      "spdx_id": null,
      "url": null,
      "node_id": "MDc6TGljZW5zZTA="
    },
    "forks": 1353,
    "open_issues": 175,
    "watchers": 6035,
    "default_branch": "master"
  },
  "organization": {
    "login": "badges",
    "id": 6254238,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjYyNTQyMzg=",
    "url": "https://api.github.com/orgs/badges",
    "repos_url": "https://api.github.com/orgs/badges/repos",
    "events_url": "https://api.github.com/orgs/badges/events",
    "hooks_url": "https://api.github.com/orgs/badges/hooks",
    "issues_url": "https://api.github.com/orgs/badges/issues",
    "members_url": "https://api.github.com/orgs/badges/members{/member}",
    "public_members_url": "https://api.github.com/orgs/badges/public_members{/member}",
    "avatar_url": "https://avatars2.githubusercontent.com/u/6254238?v=4",
    "description": "badges as a service"
  },
  "sender": {
    "login": "chris48s",
    "id": 6025893,
    "node_id": "MDQ6VXNlcjYwMjU4OTM=",
    "avatar_url": "https://avatars1.githubusercontent.com/u/6025893?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/chris48s",
    "html_url": "https://github.com/chris48s",
    "followers_url": "https://api.github.com/users/chris48s/followers",
    "following_url": "https://api.github.com/users/chris48s/following{/other_user}",
    "gists_url": "https://api.github.com/users/chris48s/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/chris48s/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/chris48s/subscriptions",
    "organizations_url": "https://api.github.com/users/chris48s/orgs",
    "repos_url": "https://api.github.com/users/chris48s/repos",
    "events_url": "https://api.github.com/users/chris48s/events{/privacy}",
    "received_events_url": "https://api.github.com/users/chris48s/received_events",
    "type": "User",
    "site_admin": false
  },
  "installation": {
    "id": 211793
  }
}

@platan
Copy link
Member

platan commented Aug 19, 2018

I've refactored https://github.com/platan/shields-workflow-config-test/blob/master/config.test.js. It should be more readable and it tests configuration loaded from file. Such test can be included in repo to tests configuration.

@chris48s chris48s changed the title WIP don't run deploy bot on dependabot PRs don't run deploy bot on dependabot PRs Aug 20, 2018
@chris48s
Copy link
Member Author

nice - cheers for the detailed info on testing this :)

@chris48s chris48s merged commit c19695f into badges:master Aug 20, 2018
@shields-deployment
Copy link

This pull request was merged to master branch. Now this change is waiting for deployment.
Deploys usually happen every few weeks. After deployment changes are copied to gh-pages branch.

This badge displays deployment status:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
developer-experience Dev tooling, test framework, and CI
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants