Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kevinoid/appveyor-status
Node.js-based script and module to query AppVeyor build status via the AppVeyor REST API.
https://github.com/kevinoid/appveyor-status
appveyor appveyor-api continuous-integration nodejs
Last synced: about 1 month ago
JSON representation
Node.js-based script and module to query AppVeyor build status via the AppVeyor REST API.
- Host: GitHub
- URL: https://github.com/kevinoid/appveyor-status
- Owner: kevinoid
- License: mit
- Created: 2017-02-16T02:26:11.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2023-10-20T22:39:47.000Z (about 1 year ago)
- Last Synced: 2024-09-23T01:51:38.032Z (about 2 months ago)
- Topics: appveyor, appveyor-api, continuous-integration, nodejs
- Language: JavaScript
- Size: 1.3 MB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
Awesome Lists containing this project
README
AppVeyor Status
===============[![Build Status](https://img.shields.io/github/actions/workflow/status/kevinoid/appveyor-status/node.js.yml?branch=main&style=flat&label=build)](https://github.com/kevinoid/appveyor-status/actions?query=branch%3Amain)
[![Build Status: Windows](https://img.shields.io/appveyor/ci/kevinoid/appveyor-status/main.svg?style=flat&label=build+on+windows)](https://ci.appveyor.com/project/kevinoid/appveyor-status)
[![Coverage](https://img.shields.io/codecov/c/github/kevinoid/appveyor-status/main.svg?style=flat)](https://app.codecov.io/gh/kevinoid/appveyor-status/branch/main)
[![Dependency Status](https://img.shields.io/librariesio/release/npm/appveyor-status.svg?style=flat)](https://libraries.io/npm/appveyor-status)
[![Supported Node Version](https://img.shields.io/node/v/appveyor-status.svg?style=flat)](https://www.npmjs.com/package/appveyor-status)
[![Version on NPM](https://img.shields.io/npm/v/appveyor-status.svg?style=flat)](https://www.npmjs.com/package/appveyor-status)A command-line tool and library for querying the
[AppVeyor](https://www.appveyor.com/) build status of a project using the
AppVeyor REST API. It does for AppVeyor what
[travis-status](https://github.com/kevinoid/travis-status) does for [Travis
CI](https://travis-ci.org/).## Introductory Example
### Command-Line Use
$ npm install -g appveyor-status
$ appveyor-status
AppVeyor build status: success### JavaScript Use
```js
const appveyorStatus = require('appveyor-status');
// See https://kevinoid.github.io/appveyor-status/api/module-appveyor-status.html#.AppveyorStatusOptions
const options = {
// By AppVeyor project name
// project: 'kevinoid/appveyor-status',
// By repository path or URL
// repo: 'https://github.com/kevinoid/appveyor-status.git',
// By statusBadgeId (from badge URL)
// statusBadgeId: '2fi78evfynm3wfog',
};
appveyorStatus.getStatus(options).then(function(status) {
console.log('Status of project matching git repo in cwd: ' + status);
});
```## Features
* Can query by AppVeyor project name, webhook ID, or repository URL or path.
* Can detect the AppVeyor project from the repository in which it is run when
project is not specified.
* Can query using status badge API or project build API, minimizing latency and
avoiding authentication in most cases.
* Can query most recent build for project or specific branch.
* Can compare build commit against a named or current commit.
* Can wait for queued build to finish, with configurable timeout, before
reporting status.## Installation
[This package](https://www.npmjs.com/package/appveyor-status) can be
installed using [npm](https://www.npmjs.com/), either globally or locally, by
running:```sh
npm install appveyor-status
```## Recipes
### Check status before release
To check that the build for the current commit is successful before releasing
it as a new version, add the following to `package.json`:```json
{
"scripts": {
"preversion": "appveyor-status -c -w"
}
}
```This will check that the AppVeyor status for the current repository is "success"
(and will wait if queued) and that it matches the current commit. It will
print the build status (which can be suppressed with `-q`) and exit with code
0 if "success" and a non-zero code otherwise, which will stop the version task.API examples can be found in the [test
specifications](https://kevinoid.github.io/appveyor-status/spec).## API Docs
To use this module as a library, see the [API
Documentation](https://kevinoid.github.io/appveyor-status/api).Command-line usage information is available via `--help`:
```sh
appveyor-status --help
```## Contributing
Contributions are appreciated. Contributors agree to abide by the [Contributor
Covenant Code of
Conduct](https://www.contributor-covenant.org/version/1/4/code-of-conduct.html).
If this is your first time contributing to a Free and Open Source Software
project, consider reading [How to Contribute to Open
Source](https://opensource.guide/how-to-contribute/)
in the Open Source Guides.If the desired change is large, complex, backwards-incompatible, can have
significantly differing implementations, or may not be in scope for this
project, opening an issue before writing the code can avoid frustration and
save a lot of time and effort.## License
This project is available under the terms of the [MIT License](LICENSE.txt).
See the [summary at TLDRLegal](https://tldrlegal.com/license/mit-license).