Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
create.py
Go to the documentation of this file.
1#!/usr/bin/env python
2#
3# Copyright 2017 Google Inc.
4#
5# Use of this source code is governed by a BSD-style license that can be
6# found in the LICENSE file.
7
8
9"""Create the cockroachDB asset."""
10
11
12import argparse
13import os
14import shutil
15import subprocess
16import sys
17
18FILE_DIR = os.path.dirname(os.path.abspath(__file__))
19INFRA_BOTS_DIR = os.path.realpath(os.path.join(FILE_DIR, os.pardir, os.pardir))
20sys.path.insert(0, INFRA_BOTS_DIR)
21import utils
22
23
24URL = "https://binaries.cockroachdb.com/cockroach-v20.2.8.linux-amd64.tgz"
25
26def create_asset(target_dir):
27 """Create the asset."""
28 with utils.tmp_dir():
29 p1 = subprocess.Popen(["curl", URL], stdout=subprocess.PIPE)
30 p2 = subprocess.Popen(["tar", "-xzf" "-"], stdin=p1.stdout)
31 p1.stdout.close() # Allow p1 to receive a SIGPIPE if p2 exits.
32 _,_ = p2.communicate()
33 shutil.move('./cockroach-v20.2.8.linux-amd64/cockroach', target_dir)
34
35
36def main():
37 parser = argparse.ArgumentParser()
38 parser.add_argument('--target_dir', '-t', required=True)
39 args = parser.parse_args()
40 create_asset(args.target_dir)
41
42
43if __name__ == '__main__':
44 main()
Definition main.py:1