DBServer::getOpenstackTags PHP Method

getOpenstackTags() public method

Return list of tags that should be applied for Openstack instances
public getOpenstackTags ( ) : array
return array
    public function getOpenstackTags()
    {
        $tags = [\Scalr_Governance::SCALR_META_TAG_NAME => $this->applyGlobalVarsToValue(\Scalr_Governance::SCALR_META_TAG_VALUE)];
        //Tags governance
        $governance = new \Scalr_Governance($this->envId);
        $gTags = (array) $governance->getValue($this->platform, \Scalr_Governance::OPENSTACK_TAGS);
        $gAllowAdditionalTags = $governance->getValue($this->platform, \Scalr_Governance::OPENSTACK_TAGS, 'allow_additional_tags');
        if (count($gTags) > 0) {
            foreach ($gTags as $tKey => $tValue) {
                $tags[$tKey] = $this->applyGlobalVarsToValue($tValue);
            }
        }
        if (count($gTags) == 0 || $gAllowAdditionalTags) {
            //Custom tags
            $cTags = $this->GetFarmRoleObject()->GetSetting(\Scalr_Role_Behavior::ROLE_BASE_CUSTOM_TAGS);
            $tagsList = @explode("\n", $cTags);
            foreach ((array) $tagsList as $tag) {
                $tag = trim($tag);
                if ($tag) {
                    $tagChunks = explode("=", $tag);
                    if (!isset($tags[trim($tagChunks[0])])) {
                        $tags[trim($tagChunks[0])] = $this->applyGlobalVarsToValue(trim($tagChunks[1]));
                    }
                }
            }
        }
        return $tags;
    }