Bitbar은 Bitrise의 구축 상황을 보다 쉽게 볼 수 있습니다.

10876 단어 BitBarBitrise

배경.


CI 환경을 활용하면 설치된 빌딩의 진행 상황을 염두에 두고 모니터를 하려고 할 때 자주 발생한다.
비트리스는 상황을 시각화하기 위해 실행 상황을 확인할 수 있는 대시보드와 슬랙 알림 등알림 시스템을 많이 준비했다.
하지만 하나하나 열어서 확인해야 하고, 건물에 편입해야 한다면 지금은 가볍고 즐거운 곳이 부족하다.
신경 쓸 때 상황을 보고 싶어요!그래서 저는 Bitbar를 사용해서 맥OS 도구 모음에서 스크립트를 확인했습니다.

Bitrise API 활용


다행히도 Bitrise에 API가 준비되어 있어 상태를 확인하거나 빌드를 트리거할 수 있습니다.
Bitrise.io API v0.1 (Work In Progress) - Bitrise DevCenter
※ 2018/12/05 현재 WIP, 향후 대폭 변경 가능
$ curl https://api.bitrise.io/v0.1
{"message":"Welcome to Bitrise API v0.1! You can find the API Documentation at: http://devcenter.bitrise.io/api/v0.1"}
Bitrise의 사용자 설정'Personal access token'발행을 통해 자신의 계정과 관련된 정보를 얻을 수 있다.
curl -H 'Authorization: token THE-ACCESS-TOKEN' 'https://api.bitrise.io/v0.1/me'
{
  "data": {
    "avatar_url": "",
    "email": "[email protected]",
    "slug": "8e82ac7601178f17",
    "username": "api-demo"
  }
}
Bitrise.io API v0.1 (Work In Progress) - Bitrise DevCenter
비트리스에서는 사용자, 오건라이제이션, 앱, 빌드가 모두 고유 ID('슬루그')를 갖고 있으며, 이 슬루그를 이용해 필요한 정보를 얻는다.
특정 App을 확인하려면 콘솔의 URL에서 확인하는 것이 가장 간단합니다.https://app.bitrise.io/app/[APP_SLUG]#/builds
curl -H 'Authorization: token THE-ACCESS-TOKEN' 'https://api.bitrise.io/v0.1/apps/APP-SLUG/builds?limit=1'
{
    "data": [
      {
        "abort_reason": null,
        "branch": "master",
        "build_number": 80,
        "commit_hash": null,
        "commit_message": null,
        "commit_view_url": null,
        "environment_prepare_finished_at": null,
        "finished_at": null,
        "is_on_hold": false,
        "original_build_params": {
          "branch": "master",
          "workflow_id": "primary"
        },
        "pull_request_id": 0,
        "pull_request_target_branch": null,
        "pull_request_view_url": null,
        "slug": "319f2d6b620b5cbe",
        "stack_config_type": "standard1",
        "stack_identifier": "linux-docker-android",
        "started_on_worker_at": null,
        "status": 0,
        "status_text": "in-progress",
        "tag": null,
        "triggered_at": "2018-11-07T16:26:38Z",
        "triggered_by": "bitrise_api_doc",
        "triggered_workflow": "primary"
      }
    ],
    "paging": {
      "next": "51a8e5b7b323fd7e",
      "page_item_limit": 3,
      "total_item_count": 80
    }
}
Bitrise.io API v0.1 (Work In Progress) - Bitrise DevCenter
구축 역사를 가져올 수 있는/builds 단점에서 필터를 상세하게 설정할 수 있습니다
구축 상태, 트리거 시간, 메시지 제출 등 요소에서 선별할 수 있습니다.

Bitbar에 표시할 수 있는 스크립트


나는 이 Bitrise의 API로 스크립트를 써 보았다.
https://gist.github.com/shinmiy/fc7fc0d20c40936f453e9ca2eccc298d
지난 일주일 동안의 구축
실행 중인 구축 수, 실행 중인 구축 세부 사항, 과거 구축 세부 사항, 각자의 링크가 모두 잘 표시됩니다.

설치 방법


Bitbar의 Plugin 폴더에 설정


Bitbar의 플러그인 폴더에 스크립트를 설정합니다.
파일에 대한 실행 권한 부여
chmod +x bitrise_status.1m.rb

토큰을 발행하다


사용자 설정 개인access tokens 발행.
다음 섹션을 Generate new 릴리즈의 토큰으로 바꿉니다.
TOKEN = 'YOUR_TOKEN_HERE'

App Slug 확인


구문 화면의 URL에서 Slug 확인
https://app.bitrise.io/app/[これがSlug]#/builds
다음 섹션을 교체합니다.
APPS = { 'Your App Name' => 'App Slug', 'Another App Name' => 'Another App Slug' }
설정이 완료되면 Bitrise는 정기적으로 스크립트를 실행하고 도구 모음에 빌드 상태를 표시합니다.

총결산


계기판은 예쁜 비트리스지만 API는 WIP이지만 상당히 풍부하게 준비되어 있다.
bitrise.yml의 GET, POST가 있기 때문에 github의 bitrise입니다.관리yml, 변경이 있으면 POST 같은 것도 가능합니다.
이것은 API를 읽을 때 겸사겸사 쓴 스크립트입니다. 매우 편리합니다. 꼭 해 보세요!

좋은 웹페이지 즐겨찾기