Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Protected Attributes | List of all members
vars.api.SkiaVarsApi Class Reference
Inheritance diagram for vars.api.SkiaVarsApi:

Public Member Functions

 setup (self)
 
 is_linux (self)
 
 swarming_bot_id (self)
 
 swarming_task_id (self)
 

Public Attributes

 builder_name
 
 workdir
 
 build_dir
 
 default_env
 
 cache_dir
 
 swarming_out_dir
 
 tmp_dir
 
 builder_cfg
 
 role
 
 configuration
 
 extra_tokens
 
 patch_storage
 
 issue
 
 patchset
 
 is_trybot
 
 internal_hardware_label
 
 is_internal_bot
 

Protected Attributes

 _swarming_bot_id
 
 _swarming_task_id
 

Detailed Description

Definition at line 16 of file api.py.

Member Function Documentation

◆ is_linux()

vars.api.SkiaVarsApi.is_linux (   self)

Definition at line 89 of file api.py.

89 def is_linux(self):
90 return (
91 'Ubuntu' in self.builder_name
92 or 'Debian' in self.builder_name
93 or 'Housekeeper' in self.builder_name
94 )
95

◆ setup()

vars.api.SkiaVarsApi.setup (   self)
Prepare the variables.

Definition at line 18 of file api.py.

18 def setup(self):
19 """Prepare the variables."""
20 # Hack start_dir to remove the "k" directory which is added by Kitchen.
21 # Otherwise, we can't get to the CIPD packages, caches, and isolates which
22 # were put into the task workdir.
23 if self.m.path.c.base_paths['start_dir'][-1] == 'k': # pragma: nocover
24 self.m.path.c.base_paths['start_dir'] = (
25 self.m.path.c.base_paths['start_dir'][:-1])
26
27 # Setup
28 self.builder_name = self.m.properties['buildername']
29
30 self.workdir = self.m.path['start_dir']
31
32 # Special input/output directories.
33 self.build_dir = self.workdir.join('build')
34
35 self.default_env = self.m.context.env
36 self.default_env['CHROME_HEADLESS'] = '1'
37 self.default_env['PATH'] = self.m.path.pathsep.join([
38 self.default_env.get('PATH', '%(PATH)s'),
39 str(self.m.bot_update.repo_resource()),
40 ])
41 self.cache_dir = self.workdir.join('cache')
42
43 self.swarming_out_dir = self.workdir.join(
44 self.m.properties.get('swarm_out_dir', 'tmp'))
45
46 self.tmp_dir = self.m.path['start_dir'].join('tmp')
47
48 self.builder_cfg = self.m.builder_name_schema.DictForBuilderName(
49 self.builder_name)
50 self.role = self.builder_cfg['role']
51 if self.role == self.m.builder_name_schema.BUILDER_ROLE_HOUSEKEEPER:
52 self.configuration = CONFIG_RELEASE
53 else:
54 self.configuration = self.builder_cfg.get('configuration', CONFIG_DEBUG)
55 arch = (self.builder_cfg.get('arch') or self.builder_cfg.get('target_arch'))
56 if ('Win' in self.builder_cfg.get('os', '') and arch == 'x86_64'):
57 self.configuration += '_x64'
58
59 self.extra_tokens = []
60 if len(self.builder_cfg.get('extra_config', '')) > 0:
61 if self.builder_cfg['extra_config'].startswith('SK'):
62 assert self.builder_cfg['extra_config'].isupper()
63 self.extra_tokens = [self.builder_cfg['extra_config']]
64 else:
65 self.extra_tokens = self.builder_cfg['extra_config'].split('_')
66
67 self.patch_storage = self.m.properties.get('patch_storage', 'gerrit')
68 self.issue = None
69 self.patchset = None
70 self.is_trybot = False
71 if (self.m.properties.get('patch_issue', '') and
72 self.m.properties['patch_issue'] != '0' and
73 self.m.properties.get('patch_set', '') and
74 self.m.properties['patch_set'] != '0' and
75 self.m.properties.get('patch_ref', '')):
76 self.is_trybot = True
77 self.issue = self.m.properties['patch_issue']
78 self.patchset = self.m.properties['patch_set']
79
80 self._swarming_bot_id = None
81 self._swarming_task_id = None
82
83 # Internal bot support.
84 self.internal_hardware_label = (
85 self.m.properties.get('internal_hardware_label'))
86 self.is_internal_bot = self.internal_hardware_label is not None
87
Definition setup.py:1

◆ swarming_bot_id()

vars.api.SkiaVarsApi.swarming_bot_id (   self)

Definition at line 97 of file api.py.

97 def swarming_bot_id(self):
98 if not self._swarming_bot_id:
99 script = self.resource('get_env_var.py')
100 step_stdout = self.m.step(
101 name='get swarming bot id',
102 cmd=['python3', script, 'SWARMING_BOT_ID'],
103 stdout=self.m.raw_io.output()).stdout.decode('utf-8')
104 self._swarming_bot_id = step_stdout.rstrip() if step_stdout else ''
105 return self._swarming_bot_id
106
static int step(int x, SkScalar min, SkScalar max)
Definition BlurTest.cpp:215

◆ swarming_task_id()

vars.api.SkiaVarsApi.swarming_task_id (   self)

Definition at line 108 of file api.py.

108 def swarming_task_id(self):
109 if not self._swarming_task_id:
110 script = self.resource('get_env_var.py')
111 step_stdout = self.m.step(
112 name='get swarming task id',
113 cmd=['python3', script, 'SWARMING_TASK_ID'],
114 stdout=self.m.raw_io.output()).stdout.decode('utf-8')
115 self._swarming_task_id = step_stdout.rstrip() if step_stdout else ''
116 return self._swarming_task_id

Member Data Documentation

◆ _swarming_bot_id

vars.api.SkiaVarsApi._swarming_bot_id
protected

Definition at line 80 of file api.py.

◆ _swarming_task_id

vars.api.SkiaVarsApi._swarming_task_id
protected

Definition at line 81 of file api.py.

◆ build_dir

vars.api.SkiaVarsApi.build_dir

Definition at line 33 of file api.py.

◆ builder_cfg

vars.api.SkiaVarsApi.builder_cfg

Definition at line 48 of file api.py.

◆ builder_name

vars.api.SkiaVarsApi.builder_name

Definition at line 28 of file api.py.

◆ cache_dir

vars.api.SkiaVarsApi.cache_dir

Definition at line 41 of file api.py.

◆ configuration

vars.api.SkiaVarsApi.configuration

Definition at line 52 of file api.py.

◆ default_env

vars.api.SkiaVarsApi.default_env

Definition at line 35 of file api.py.

◆ extra_tokens

vars.api.SkiaVarsApi.extra_tokens

Definition at line 59 of file api.py.

◆ internal_hardware_label

vars.api.SkiaVarsApi.internal_hardware_label

Definition at line 84 of file api.py.

◆ is_internal_bot

vars.api.SkiaVarsApi.is_internal_bot

Definition at line 86 of file api.py.

◆ is_trybot

vars.api.SkiaVarsApi.is_trybot

Definition at line 70 of file api.py.

◆ issue

vars.api.SkiaVarsApi.issue

Definition at line 68 of file api.py.

◆ patch_storage

vars.api.SkiaVarsApi.patch_storage

Definition at line 67 of file api.py.

◆ patchset

vars.api.SkiaVarsApi.patchset

Definition at line 69 of file api.py.

◆ role

vars.api.SkiaVarsApi.role

Definition at line 50 of file api.py.

◆ swarming_out_dir

vars.api.SkiaVarsApi.swarming_out_dir

Definition at line 43 of file api.py.

◆ tmp_dir

vars.api.SkiaVarsApi.tmp_dir

Definition at line 46 of file api.py.

◆ workdir

vars.api.SkiaVarsApi.workdir

Definition at line 30 of file api.py.


The documentation for this class was generated from the following file: