Example #1
0
task('release.publishGithubRelease', (done: Function) => {
  const packageJSON = require('../../../package.json');

  const github = new GithubApi({
    version: '3.0.0'
  });

  github.authenticate({
    type: 'oauth',
    token: process.env.GH_TOKEN
  });

  return changelog({
    preset: 'angular'
  })
  .pipe(obj(function(file, enc, cb) {
    github.releases.createRelease({
      owner: 'ionic-team',
      repo: 'ionic',
      target_commitish: 'master',
      tag_name: 'v' + packageJSON.version,
      name: packageJSON.version,
      body: file.toString(),
      prerelease: false
    }, done);
  }));
});
Example #2
0
/**
 * Returns an authenticated github connection.
 */
function connectToGithub() {
  const github = new GitHub({
    version: '3.0.0',
    protocol: 'https',
  });

  github.authenticate({type: 'oauth', token: GITHUB_TOKEN});
  return github;
};
Example #3
0
            socket.on("subscribe", (data: any) => {
                self.logger.debug("Attempt to subscribe to %s/%s", data.user, data.repository);

                var requestBody = {
                    user: data.user,
                    repo: data.repository
                };

                var github: any = new GitHubApi({
                    version: "3.0.0",
                    debug: false,
                    protocol: "https",
                    host: "api.github.com",
                    timeout: 5000
                });

                github.authenticate({ type: "oauth", token: socket.handshake.session.accessToken });

                async.waterfall([
                    (getRepositoryCompleted: Function) => {
                        github.repos.get(requestBody, getRepositoryCompleted);
                    },
                    (repository: any, subscribeToRoom: Function) => {
                        if (!repository) {
                            subscribeToRoom("Access denided");
                        } else {
                            socket.join(util.format("%s/%s", data.user, data.repository));
                            subscribeToRoom(null);
                        }
                    }
                ], (err: any) => {
                    if (err) {
                        self.logger.error("Error occured during subscription", err);
                    } else {
                        self.logger.info("Succesfully subscribed");
                    }
                });
            });
Example #4
0
import {GraphQLClient} from 'graphql-request';
import {config} from 'firebase-functions';
import * as GithubApi from 'github';

/** API token for the Github repository. Required to set the github status on commits and PRs. */
const githubAccessToken = config().secret.github;

/** API Endpoint for the Github API v4 using GraphQL. */
const githubApiV4Endpoint = 'https://api.github.com/graphql';

/** Export the GitHub V3 API instance that is authenticated. */
export const githubApiV3 = new GithubApi();

/** Export the GraphQL client that can be used to query the Github API v4. */
export const githubApiV4 = new GraphQLClient(githubApiV4Endpoint, {
  headers: {
    Authorization: `Bearer ${githubAccessToken}`,
  }
});

// Authenticate the Github API package with the user token.
githubApiV3.authenticate({type: 'token', token: githubAccessToken});
    var repositoryInfo = gh(buildRepositoryUri);    
    
    var github = new GitHubApi({
        protocol: "https",
        host: "api.github.com",
        headers: {
            "user-agent": "create-github-release-task"
        },
        Promise: require("bluebird"),
        followRedirects: false,
        timeout: 5000
    });
    
    github.authenticate({
        type: "basic",
        username: endpointAuth.parameters["Username"],
        password: endpointAuth.parameters["Password"]
    });

    var tagName = tl.getInput("tagName", true);
    var prereleaseMode = tl.getInput("prereleaseMode", true);
    var prerelease = false;
    switch (prereleaseMode)
    {
        case "1":
            prerelease = true;
            break;
        case "3":
            var prereleaseComponents = semver.prerelease(tagName);
            prerelease = (prereleaseComponents !== null);
            break;