def publish(context): """Publishes the project""" commit_version_change(context) if context.github: # github token project_settings = project_config(context.module_name) if not project_settings['gh_token']: click.echo('You need a GitHub token for changes to create a release.') click.pause('Press [enter] to launch the GitHub "New personal access ' 'token" page, to create a token for changes.') click.launch('https://github.com/settings/tokens/new') project_settings['gh_token'] = click.prompt('Enter your changes token') store_settings(context.module_name, project_settings) description = click.prompt('Describe this release') upload_url = create_github_release(context, project_settings['gh_token'], description) upload_release_distributions( context, project_settings['gh_token'], build_distributions(context), upload_url, ) click.pause('Press [enter] to review and update your new release') click.launch('{0}/releases/tag/{1}'.format(context.repo_url, context.new_version)) else: tag_and_push(context)
def test_github_release(): responses.add( responses.POST, 'https://api.github.com/repos/michaeljoseph/test_app/releases', body=json.dumps( dict(id='release-id', upload_url='http://upload.url.com/')), status=201, content_type='application/json') upload_url = vcs.create_github_release(context, 'gh-token', 'Description') assert upload_url == 'http://upload.url.com/'
def test_github_release(): responses.add( responses.POST, 'https://api.github.com/repos/michaeljoseph/test_app/releases', body=json.dumps(dict( id='release-id', upload_url='http://upload.url.com/' )), status=201, content_type='application/json' ) upload_url = vcs.create_github_release(context, 'gh-token', 'Description') assert upload_url == 'http://upload.url.com/'
def test_github_release(): with CliRunner().isolated_filesystem(): git('init') git('remote', 'add', 'origin', 'https://github.com/michaeljoseph/test_app.git') responses.add( responses.POST, 'https://api.github.com/repos/michaeljoseph/test_app/releases', body=json.dumps( dict(id='release-id', upload_url='http://upload.url.com/')), status=201, content_type='application/json', ) upload_url = vcs.create_github_release(context, 'gh-token', 'Description') assert upload_url == 'http://upload.url.com/'