Esempio n. 1
0
def main():
    safe_mkdir(dist_dir())

    args = parse_args()
    node_headers_dir = os.path.join(dist_dir(),
                                    'node-{0}'.format(args.version))
    node2_headers_dir = os.path.join(dist_dir(),
                                     'node-{0}-headers'.format(args.version))
    iojs_headers_dir = os.path.join(dist_dir(),
                                    'iojs-{0}'.format(args.version))
    iojs2_headers_dir = os.path.join(dist_dir(),
                                     'iojs-{0}-headers'.format(args.version))

    copy_headers(node_headers_dir)
    create_header_tarball(node_headers_dir)
    copy_headers(node2_headers_dir)
    create_header_tarball(node2_headers_dir)
    copy_headers(iojs_headers_dir)
    create_header_tarball(iojs_headers_dir)
    copy_headers(iojs2_headers_dir)
    create_header_tarball(iojs2_headers_dir)

    # Upload node's headers to S3.
    bucket, access_key, secret_key = s3_config()
    upload_node(bucket, access_key, secret_key, args.version)
Esempio n. 2
0
def main():
  args = parse_args()

  if not args.publish_release:
    build_version = get_electron_build_version()
    if not get_electron_version().startswith(build_version):
      error = 'Tag name ({0}) should match build version ({1})\n'.format(
          get_electron_version(), build_version)
      sys.stderr.write(error)
      sys.stderr.flush()
      return 1

  github = GitHub(auth_token())
  releases = github.repos(ELECTRON_REPO).releases.get()
  tag_exists = False
  for release in releases:
    if not release['draft'] and release['tag_name'] == args.version:
      tag_exists = True
      break

  release = create_or_get_release_draft(github, releases, args.version,
                                        tag_exists)

  if args.publish_release:
    # Upload the Node SHASUMS*.txt.
    run_python_script('upload-node-checksums.py', '-v', get_electron_version(), '--dist-url', args.dist_url)

    # Upload the index.json.
    # run_python_script('upload-index-json.py')

    # Create and upload the Electron SHASUMS*.txt
    release_electron_checksums(github, release)

    # Press the publish button.
    # publish_release(github, release['id'])

    # Do not upload other files when passed "-p".
    return

  # Upload Electron with GitHub Releases API.
  upload_electron(github, release, os.path.join(dist_dir(), DIST_NAME))
  upload_electron(github, release, os.path.join(dist_dir(), SYMBOLS_NAME))
  # if PLATFORM == 'darwin':
  #   upload_electron(github, release, os.path.join(dist_dir(), DSYM_NAME))
  # elif PLATFORM == 'win32':
  #   upload_electron(github, release, os.path.join(dist_dir(), PDB_NAME))

  # Upload chromedriver and mksnapshot.
  chromedriver = get_zip_name('chromedriver', get_chromedriver_version())
  upload_electron(github, release, os.path.join(dist_dir(), chromedriver))
  # mksnapshot = get_zip_name('mksnapshot', get_electron_version())
  # upload_electron(github, release, os.path.join(dist_dir(), mksnapshot))

  # if PLATFORM == 'win32' and not tag_exists:
  #   # Upload PDBs to Windows symbol server.
  #   run_python_script('upload-windows-pdb.py')

  # Upload node headers.
  run_python_script('upload-node-headers.py', '-v', args.version)
Esempio n. 3
0
def main():
  args = parse_args()

  if not args.publish_release:
    build_version = get_electron_build_version()
    if not get_electron_version().startswith(build_version):
      error = 'Tag name ({0}) should match build version ({1})\n'.format(
          get_electron_version(), build_version)
      sys.stderr.write(error)
      sys.stderr.flush()
      return 1

  github = GitHub(auth_token())
  releases = github.repos(ELECTRON_REPO).releases.get()
  tag_exists = False
  for release in releases:
    if not release['draft'] and release['tag_name'] == args.version:
      tag_exists = True
      break

  release = create_or_get_release_draft(github, releases, args.version,
                                        tag_exists)

  if args.publish_release:
    # Upload the Node SHASUMS*.txt.
    run_python_script('upload-node-checksums.py', '-v', get_electron_version(), '--dist-url', args.dist_url)

    # Upload the index.json.
    # run_python_script('upload-index-json.py')

    # Create and upload the Electron SHASUMS*.txt
    release_electron_checksums(github, release)

    # Press the publish button.
    # publish_release(github, release['id'])

    # Do not upload other files when passed "-p".
    return

  # Upload Electron with GitHub Releases API.
  upload_electron(github, release, os.path.join(dist_dir(), DIST_NAME))
  # upload_electron(github, release, os.path.join(dist_dir(), SYMBOLS_NAME))
  # if PLATFORM == 'darwin':
  #   upload_electron(github, release, os.path.join(dist_dir(), DSYM_NAME))
  # elif PLATFORM == 'win32':
  #   upload_electron(github, release, os.path.join(dist_dir(), PDB_NAME))

  # Upload chromedriver and mksnapshot.
  chromedriver = get_zip_name('chromedriver', get_chromedriver_version())
  upload_electron(github, release, os.path.join(dist_dir(), chromedriver))
    # mksnapshot = get_zip_name('mksnapshot', get_electron_version())
    # upload_electron(github, release, os.path.join(dist_dir(), mksnapshot))

  # if PLATFORM == 'win32' and not tag_exists:
  #   # Upload PDBs to Windows symbol server.
  #   run_python_script('upload-windows-pdb.py')

  # Upload node headers.
  run_python_script('upload-node-headers.py', '-v', args.version)
Esempio n. 4
0
def upload_node(bucket, access_key, secret_key, version):
    with scoped_cwd(dist_dir()):
        s3put(bucket, access_key, secret_key,
              dist_dir(), 'atom-shell/dist/{0}'.format(version),
              glob.glob('node-*.tar.gz'))
        s3put(bucket, access_key, secret_key,
              dist_dir(), 'atom-shell/dist/{0}'.format(version),
              glob.glob('iojs-*.tar.gz'))

    if PLATFORM == 'win32':
        if get_target_arch() != 'x64':
            node_lib = os.path.join(dist_dir(), 'node.lib')
            iojs_lib = os.path.join(dist_dir(), 'win-x86', 'iojs.lib')
        else:
            node_lib = os.path.join(dist_dir(), 'x64', 'node.lib')
            iojs_lib = os.path.join(dist_dir(), 'win-x64', 'iojs.lib')
        safe_mkdir(os.path.dirname(node_lib))
        safe_mkdir(os.path.dirname(iojs_lib))

        # Copy atom.lib to node.lib and iojs.lib.
        atom_lib = os.path.join(output_dir(), 'node_import.lib')
        shutil.copy2(atom_lib, node_lib)
        shutil.copy2(atom_lib, iojs_lib)

        # Upload the node.lib.
        s3put(bucket, access_key, secret_key, dist_dir(),
              'atom-shell/dist/{0}'.format(version), [node_lib])

        # Upload the iojs.lib.
        s3put(bucket, access_key, secret_key, dist_dir(),
              'atom-shell/dist/{0}'.format(version), [iojs_lib])
Esempio n. 5
0
def dist_newer_than_head():
    with scoped_cwd(SOURCE_ROOT):
        try:
            head_time = subprocess.check_output(
                ['git', 'log', '--pretty=format:%at', '-n', '1']).strip()
            dist_time = os.path.getmtime(os.path.join(dist_dir(), DIST_NAME))
        except OSError as e:
            if e.errno != errno.ENOENT:
                raise
            return False

    return dist_time > int(head_time)
Esempio n. 6
0
def dist_newer_than_head():
  with scoped_cwd(SOURCE_ROOT):
    try:
      head_time = subprocess.check_output(['git', 'log', '--pretty=format:%at',
                                           '-n', '1']).strip()
      dist_time = os.path.getmtime(os.path.join(dist_dir(), DIST_NAME))
    except OSError as e:
      if e.errno != errno.ENOENT:
        raise
      return False

  return dist_time > int(head_time)
Esempio n. 7
0
def main():
    args = parse_args()
    print('[INFO] Running upload...')

    # Enable urllib3 debugging output
    if os.environ.get('DEBUG_HTTP_HEADERS') == 'true':
        logging.basicConfig(level=logging.DEBUG)
        logging.getLogger("urllib3").setLevel(logging.DEBUG)
        logging.debug(
            "DEBUG_HTTP_HEADERS env var is enabled, logging HTTP headers")
        debug_requests_on()

    # BRAVE_REPO is defined in lib/helpers.py for now
    repo = GitHub(get_env_var('GITHUB_TOKEN')).repos(BRAVE_REPO)

    tag = get_brave_version()
    release = get_release(repo, tag, allow_published_release_updates=False)

    if not release:
        print("[INFO] No existing release found, creating new "
              "release for this upload")
        release = create_release_draft(repo, tag)

    print('[INFO] Uploading release {}'.format(release['tag_name']))
    # Upload Brave with GitHub Releases API.
    upload_brave(repo,
                 release,
                 os.path.join(dist_dir(), DIST_NAME),
                 force=args.force)
    upload_brave(repo,
                 release,
                 os.path.join(dist_dir(), SYMBOLS_NAME),
                 force=args.force)
    # if PLATFORM == 'darwin':
    #     upload_brave(repo, release, os.path.join(dist_dir(), DSYM_NAME))
    # elif PLATFORM == 'win32':
    #     upload_brave(repo, release, os.path.join(dist_dir(), PDB_NAME))

    pkgs = get_brave_packages(output_dir(), release_channel(),
                              get_raw_version())

    if PLATFORM == 'darwin':
        for pkg in pkgs:
            upload_brave(repo,
                         release,
                         os.path.join(output_dir(), pkg),
                         force=args.force)
    elif PLATFORM == 'win32':
        if get_target_arch() == 'x64':
            upload_brave(repo,
                         release,
                         os.path.join(output_dir(), 'brave_installer.exe'),
                         'brave_installer-x64.exe',
                         force=args.force)
            for pkg in pkgs:
                upload_brave(repo,
                             release,
                             os.path.join(output_dir(), pkg),
                             force=args.force)
        else:
            upload_brave(repo,
                         release,
                         os.path.join(output_dir(), 'brave_installer.exe'),
                         'brave_installer-ia32.exe',
                         force=args.force)
            for pkg in pkgs:
                upload_brave(repo,
                             release,
                             os.path.join(output_dir(), pkg),
                             force=args.force)
    else:
        if get_target_arch() == 'x64':
            for pkg in pkgs:
                upload_brave(repo,
                             release,
                             os.path.join(output_dir(), pkg),
                             force=args.force)
        else:
            upload_brave(repo,
                         release,
                         os.path.join(output_dir(), 'brave-i386.rpm'),
                         force=args.force)
            upload_brave(repo,
                         release,
                         os.path.join(output_dir(), 'brave-i386.deb'),
                         force=args.force)

    # mksnapshot = get_zip_name('mksnapshot', get_brave_version())
    # upload_brave(repo, release, os.path.join(dist_dir(), mksnapshot))

    # if PLATFORM == 'win32' and not tag_exists:
    #     # Upload PDBs to Windows symbol server.
    #     run_python_script('upload-windows-pdb.py')

    if os.environ.get('DEBUG_HTTP_HEADERS') == 'true':
        debug_requests_off()
    print('[INFO] Finished upload')
Esempio n. 8
0
def main():
    args = parse_args()

    if not args.publish_release:
        build_version = get_brave_version()
        if not get_brave_version().startswith(build_version):
            error = 'Tag name ({0}) should match build version ({1})\n'.format(
                get_brave_version(), build_version)
            sys.stderr.write(error)
            sys.stderr.flush()
            return 1

    github = GitHub(auth_token())
    releases = github.repos(BRAVE_REPO).releases.get()
    tag_exists = False
    for release in releases:
        if not release['draft'] and release['tag_name'] == args.version:
            tag_exists = True
            break

    release = create_or_get_release_draft(github, releases, args.version,
                                          tag_exists)

    if args.publish_release:
        # Create and upload the Brave SHASUMS*.txt
        release_brave_checksums(github, release)

        # Press the publish button.
        # publish_release(github, release['id'])

        # Do not upload other files when passed "-p".
        return

    # Upload Brave with GitHub Releases API.
    upload_brave(github, release, os.path.join(dist_dir(), DIST_NAME))
    upload_brave(github, release, os.path.join(dist_dir(), SYMBOLS_NAME))
    # if PLATFORM == 'darwin':
    #   upload_brave(github, release, os.path.join(dist_dir(), DSYM_NAME))
    # elif PLATFORM == 'win32':
    #   upload_brave(github, release, os.path.join(dist_dir(), PDB_NAME))

    # Upload chromedriver and mksnapshot.
    chromedriver = get_zip_name('chromedriver', get_chromedriver_version())
    upload_brave(github, release, os.path.join(dist_dir(), chromedriver))

    if PLATFORM == 'darwin':
        upload_brave(github, release, os.path.join(output_dir(), 'Brave.dmg'))
    elif PLATFORM == 'win32':
        if get_target_arch() == 'x64':
            upload_brave(github, release,
                         os.path.join(output_dir(), 'brave_installer.exe'),
                         'brave_installer-x64.exe')
        else:
            upload_brave(github, release,
                         os.path.join(output_dir(), 'brave_installer.exe'),
                         'brave_installer-ia32.exe')
    # TODO: Enable after linux packaging lands
    #else:
    #if get_target_arch() == 'x64':
    #upload_brave(github, release, os.path.join(output_dir(), 'brave-x86_64.rpm'))
    #upload_brave(github, release, os.path.join(output_dir(), 'brave-amd64.deb'))
    #else:
    #upload_brave(github, release, os.path.join(output_dir(), 'brave-i386.rpm'))
    #upload_brave(github, release, os.path.join(output_dir(), 'brave-i386.deb'))

    # mksnapshot = get_zip_name('mksnapshot', get_brave_version())
    # upload_brave(github, release, os.path.join(dist_dir(), mksnapshot))

    # if PLATFORM == 'win32' and not tag_exists:
    #   # Upload PDBs to Windows symbol server.
    #   run_python_script('upload-windows-pdb.py')

    versions = parse_version(args.version)
    version = '.'.join(versions[:3])
Esempio n. 9
0
def main():
    args = parse_args()
    print('[INFO] Running upload...')

    # Repo is defined in lib/helpers.py for now
    repo = GitHub(get_env_var('GITHUB_TOKEN')).repos(BRAVE_REPO)

    tag = get_brave_version()
    release = get_draft(repo, tag)

    if not release:
        print(
            "[INFO] No existing release found, creating new release for this upload"
        )
        release = create_release_draft(repo, tag)

    print('[INFO] Uploading release {}'.format(release['tag_name']))
    # Upload Brave with GitHub Releases API.
    upload_brave(repo,
                 release,
                 os.path.join(dist_dir(), DIST_NAME),
                 force=args.force)
    upload_brave(repo,
                 release,
                 os.path.join(dist_dir(), SYMBOLS_NAME),
                 force=args.force)
    # if PLATFORM == 'darwin':
    #   upload_brave(repo, release, os.path.join(dist_dir(), DSYM_NAME))
    # elif PLATFORM == 'win32':
    #   upload_brave(repo, release, os.path.join(dist_dir(), PDB_NAME))

    # Upload chromedriver and mksnapshot.
    chromedriver = get_zip_name('chromedriver', get_chromedriver_version())
    upload_brave(repo,
                 release,
                 os.path.join(dist_dir(), chromedriver),
                 force=args.force)

    pkgs = yield_brave_packages(output_dir(), release_channel(),
                                get_raw_version())

    if PLATFORM == 'darwin':
        for pkg in pkgs:
            upload_brave(repo,
                         release,
                         os.path.join(output_dir(), pkg),
                         force=args.force)
    elif PLATFORM == 'win32':
        if get_target_arch() == 'x64':
            upload_brave(repo,
                         release,
                         os.path.join(output_dir(), 'brave_installer.exe'),
                         'brave_installer-x64.exe',
                         force=args.force)
        else:
            upload_brave(repo,
                         release,
                         os.path.join(output_dir(), 'brave_installer.exe'),
                         'brave_installer-ia32.exe',
                         force=args.force)
    else:
        if get_target_arch() == 'x64':
            for pkg in pkgs:
                upload_brave(repo,
                             release,
                             os.path.join(output_dir(), pkg),
                             force=args.force)
        else:
            upload_brave(repo,
                         release,
                         os.path.join(output_dir(), 'brave-i386.rpm'),
                         force=args.force)
            upload_brave(repo,
                         release,
                         os.path.join(output_dir(), 'brave-i386.deb'),
                         force=args.force)

    # mksnapshot = get_zip_name('mksnapshot', get_brave_version())
    # upload_brave(repo, release, os.path.join(dist_dir(), mksnapshot))

    # if PLATFORM == 'win32' and not tag_exists:
    #   # Upload PDBs to Windows symbol server.
    #   run_python_script('upload-windows-pdb.py')

    versions = parse_version(args.version)
    version = '.'.join(versions[:3])
    print('[INFO] Finished upload')
Esempio n. 10
0
def create_header_tarball(dist_headers_dir):
    target = dist_headers_dir + '.tar.gz'
    with scoped_cwd(dist_dir()):
        tarball = tarfile.open(name=target, mode='w:gz')
        tarball.add(os.path.relpath(dist_headers_dir))
        tarball.close()