Switch to perestroika v5 repositories

Perestroika builds both rpm and deb fuel repos.
We use perestroika rpm repository to build fwm
repository which includes fuel packages as well
as those packages which are listed in requirements-rpm.txt.
Deb repository can be used directly.

Closes-Bug: #1479761
Change-Id: I236144759eb38e71977d175226f81772d23de9b3
This commit is contained in:
Vladimir Kozhukalov 2015-07-28 19:02:12 +03:00 committed by Sergey Kulanov
parent 826387d1a0
commit fa08b52fbd
7 changed files with 88 additions and 129 deletions

152
config.mk
View File

@ -134,121 +134,93 @@ LOCAL_MIRROR_DOCKER:=$(LOCAL_MIRROR)/docker
LOCAL_MIRROR_DOCKER_BASEURL:=$(LOCAL_MIRROR_DOCKER) LOCAL_MIRROR_DOCKER_BASEURL:=$(LOCAL_MIRROR_DOCKER)
# Use download.mirantis.com mirror by default. Other possible values are # Use download.mirantis.com mirror by default. Other possible values are
# 'msk', 'srt', 'usa', 'hrk'. # 'msk', 'srt', 'usa', 'hrk', 'cz'
# Setting any other value or removing of this variable will cause # Setting any other value or removing of this variable will cause
# download of all the packages directly from internet # download of all the packages directly from internet
USE_MIRROR?=ext USE_MIRROR?=ext
ifeq ($(USE_MIRROR),ext) ifeq ($(USE_MIRROR),ext)
YUM_REPOS?=proprietary YUM_REPOS?=proprietary
MIRROR_BASE?=http://mirror.fuel-infra.org/fwm/$(PRODUCT_VERSION) MIRROR_CENTOS?=http://mirror.fuel-infra.org/fwm/$(PRODUCT_VERSION)/centos
MIRROR_CENTOS?=$(MIRROR_BASE)/centos
MIRROR_UBUNTU?=mirror.fuel-infra.org
MIRROR_FUEL_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_UBUNTU_ROOT?=/$(PRODUCT_NAME)-repos/$(PRODUCT_VERSION)/cluster/base/trusty/
MIRROR_UBUNTU_METHOD?=http
MIRROR_UBUNTU_SECTION?=main
MIRROR_DOCKER?=$(MIRROR_BASE)/docker
MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS) MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS)
SANDBOX_MIRROR_CENTOS_UPSTREAM?=http://vault.centos.org/$(CENTOS_RELEASE) SANDBOX_MIRROR_CENTOS_UPSTREAM?=http://vault.centos.org/$(CENTOS_RELEASE)
MIRROR_UBUNTU?=mirror.fuel-infra.org
MIRROR_MOS_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_DOCKER?=http://mirror.fuel-infra.org/fwm/$(PRODUCT_VERSION)/docker
endif endif
ifeq ($(USE_MIRROR),srt) ifeq ($(USE_MIRROR),srt)
YUM_REPOS?=proprietary YUM_REPOS?=proprietary
MIRROR_BASE?=http://osci-mirror-srt.srt.mirantis.net/fwm/$(PRODUCT_VERSION) MIRROR_CENTOS?=http://osci-mirror-srt.srt.mirantis.net/fwm/$(PRODUCT_VERSION)/centos
MIRROR_CENTOS?=$(MIRROR_BASE)/centos
MIRROR_UBUNTU?=osci-mirror-srt.srt.mirantis.net
MIRROR_FUEL_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_UBUNTU_ROOT?=/$(PRODUCT_NAME)-repos/$(PRODUCT_VERSION)/cluster/base/trusty/
MIRROR_UBUNTU_METHOD?=http
MIRROR_UBUNTU_SECTION?=main
MIRROR_DOCKER?=$(MIRROR_BASE)/docker
MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS) MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS)
MIRROR_UBUNTU?=osci-mirror-srt.srt.mirantis.net
MIRROR_MOS_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_DOCKER?=http://osci-mirror-srt.srt.mirantis.net/fwm/$(PRODUCT_VERSION)/docker
endif endif
ifeq ($(USE_MIRROR),msk) ifeq ($(USE_MIRROR),msk)
YUM_REPOS?=proprietary YUM_REPOS?=proprietary
MIRROR_BASE?=http://osci-mirror-msk.msk.mirantis.net/fwm/$(PRODUCT_VERSION) MIRROR_CENTOS?=http://osci-mirror-msk.msk.mirantis.net/fwm/$(PRODUCT_VERSION)/centos
MIRROR_CENTOS?=$(MIRROR_BASE)/centos
MIRROR_UBUNTU?=osci-mirror-msk.msk.mirantis.net
MIRROR_FUEL_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_UBUNTU_ROOT?=/$(PRODUCT_NAME)-repos/$(PRODUCT_VERSION)/cluster/base/trusty/
MIRROR_UBUNTU_METHOD?=http
MIRROR_UBUNTU_SECTION?=main
MIRROR_DOCKER?=$(MIRROR_BASE)/docker
MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS) MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS)
MIRROR_UBUNTU?=osci-mirror-msk.msk.mirantis.net
MIRROR_MOS_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_DOCKER?=http://osci-mirror-msk.msk.mirantis.net/fwm/$(PRODUCT_VERSION)/docker
endif endif
ifeq ($(USE_MIRROR),hrk) ifeq ($(USE_MIRROR),hrk)
YUM_REPOS?=proprietary YUM_REPOS?=proprietary
MIRROR_BASE?=http://osci-mirror-kha.kha.mirantis.net/fwm/$(PRODUCT_VERSION) MIRROR_CENTOS?=http://osci-mirror-kha.kha.mirantis.net/fwm/$(PRODUCT_VERSION)/centos
MIRROR_CENTOS?=$(MIRROR_BASE)/centos
MIRROR_UBUNTU?=osci-mirror-kha.kha.mirantis.net
MIRROR_FUEL_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_UBUNTU_ROOT?=/$(PRODUCT_NAME)-repos/$(PRODUCT_VERSION)/cluster/base/trusty/
MIRROR_UBUNTU_METHOD?=http
MIRROR_UBUNTU_SECTION?=main
MIRROR_DOCKER?=$(MIRROR_BASE)/docker
MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS) MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS)
MIRROR_UBUNTU?=osci-mirror-kha.kha.mirantis.net
MIRROR_MOS_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_DOCKER?=http://osci-mirror-kha.kha.mirantis.net/fwm/$(PRODUCT_VERSION)/docker
endif endif
ifeq ($(USE_MIRROR),usa) ifeq ($(USE_MIRROR),usa)
YUM_REPOS?=proprietary YUM_REPOS?=proprietary
MIRROR_BASE?=http://mirror.seed-us1.fuel-infra.org/fwm/$(PRODUCT_VERSION) MIRROR_CENTOS?=http://mirror.seed-us1.fuel-infra.org/fwm/$(PRODUCT_VERSION)/centos
MIRROR_CENTOS?=$(MIRROR_BASE)/centos
MIRROR_UBUNTU?=mirror.seed-us1.fuel-infra.org
MIRROR_FUEL_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_UBUNTU_ROOT?=/$(PRODUCT_NAME)-repos/$(PRODUCT_VERSION)/cluster/base/trusty/
MIRROR_UBUNTU_METHOD?=http
MIRROR_UBUNTU_SECTION?=main
MIRROR_DOCKER?=$(MIRROR_BASE)/docker
MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS) MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS)
MIRROR_UBUNTU?=mirror.seed-us1.fuel-infra.org
MIRROR_MOS_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_DOCKER?=http://mirror.seed-us1.fuel-infra.org/fwm/$(PRODUCT_VERSION)/docker
endif endif
ifeq ($(USE_MIRROR),cz) ifeq ($(USE_MIRROR),cz)
YUM_REPOS?=proprietary YUM_REPOS?=proprietary
MIRROR_BASE?=http://mirror.seed-cz1.fuel-infra.org/fwm/$(PRODUCT_VERSION) MIRROR_CENTOS?=http://mirror.seed-cz1.fuel-infra.org/fwm/$(PRODUCT_VERSION)/centos
MIRROR_CENTOS?=$(MIRROR_BASE)/centos
MIRROR_UBUNTU?=mirror.seed-cz1.fuel-infra.org
MIRROR_FUEL_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_UBUNTU_ROOT?=/$(PRODUCT_NAME)-repos/$(PRODUCT_VERSION)/cluster/base/trusty/
MIRROR_UBUNTU_METHOD?=http
MIRROR_UBUNTU_SECTION?=main
MIRROR_DOCKER?=$(MIRROR_BASE)/docker
MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS) MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS)
MIRROR_UBUNTU?=mirror.seed-cz1.fuel-infra.org
MIRROR_MOS_UBUNTU?=$(MIRROR_UBUNTU)
MIRROR_DOCKER?=http://mirror.seed-cz1.fuel-infra.org/fwm/$(PRODUCT_VERSION)/docker
endif endif
#This suffix is used to generate path
#to ubuntu mirror inside mirror
#DocumentRoot
MIRROR_UBUNTU_SUFFIX?=/pkgs/ubuntu
MIRROR_CENTOS?=http://mirrors-local-msk.msk.mirantis.net/centos-$(PRODUCT_VERSION)/$(CENTOS_RELEASE)
MIRROR_CENTOS_KERNEL?=http://mirror.centos.org/centos-6/6.6/
MIRROR_CENTOS_OS_BASEURL:=$(MIRROR_CENTOS)/os/$(CENTOS_ARCH)
MIRROR_CENTOS_KERNEL_BASEURL?=$(MIRROR_CENTOS_KERNEL)/os/$(CENTOS_ARCH)
MIRROR_UBUNTU?=osci-mirror-msk.msk.mirantis.net
MIRROR_UBUNTU_OS_BASEURL:=$(MIRROR_UBUNTU)
MIRROR_UBUNTU_METHOD?=http
MIRROR_UBUNTU_ROOT?=/osci/$(PRODUCT_NAME)/$(PRODUCT_VERSION)/cluster/base/trusty/
MIRROR_UBUNTU_SECTION?=main
MIRROR_DOCKER?=http://mirror.fuel-infra.org/fwm/$(PRODUCT_VERSION)/docker
MIRROR_DOCKER_BASEURL:=$(MIRROR_DOCKER)
# MIRROR_FUEL option is valid only for 'fuel' YUM_REPOS section
# and ignored in other cases
MIRROR_POSTFIX?=stable
MIRROR_FUEL?=http://perestroika-repo-tst.infra.mirantis.net/osci/mos/$(PRODUCT_VERSION)/fuel/base/centos6/
ifeq (precise,$(strip $(UBUNTU_RELEASE)))
MIRROR_FUEL_UBUNTU?=http://osci-obs.vm.mirantis.net:82/ubuntu-fuel-$(PRODUCT_VERSION)-$(MIRROR_POSTFIX)/reprepro
else
MIRROR_FUEL_UBUNTU?=perestroika-repo-tst.infra.mirantis.net
endif
REQUIRED_RPMS:=$(shell grep -v "^\\s*\#" $(SOURCE_DIR)/requirements-rpm.txt)
REQUIRED_DEBS:=$(shell grep -v "^\\s*\#" $(SOURCE_DIR)/requirements-deb.txt)
# Which repositories to use for making local centos mirror. # Which repositories to use for making local centos mirror.
# Possible values you can find out from mirror/centos/yum_repos.mk file. # Possible values you can find out from mirror/centos/yum_repos.mk file.
# The actual name will be constracted wich prepending "yum_repo_" prefix. # The actual name will be constracted prepending "yum_repo_" prefix.
# Example: YUM_REPOS?=official epel => yum_repo_official and yum_repo_epel # Example: YUM_REPOS?=official epel => yum_repo_official and yum_repo_epel
# will be used. # will be used.
YUM_REPOS?=official fuel subscr_manager YUM_REPOS?=official fuel subscr_manager
MIRROR_CENTOS?=http://mirrors-local-msk.msk.mirantis.net/centos-$(PRODUCT_VERSION)/$(CENTOS_RELEASE)
MIRROR_CENTOS_KERNEL?=http://mirror.centos.org/centos-6/6.6/
SANDBOX_MIRROR_CENTOS_UPSTREAM?=http://mirrors-local-msk.msk.mirantis.net/centos-$(PRODUCT_VERSION)/$(CENTOS_RELEASE)
SANDBOX_MIRROR_EPEL?=http://mirror.yandex.ru/epel/
MIRROR_UBUNTU_METHOD?=http
MIRROR_UBUNTU?=osci-mirror-msk.msk.mirantis.net
# := is used as a temporary solution to align this with jenkins-jobs
MIRROR_UBUNTU_ROOT:=/pkgs/ubuntu/
MIRROR_UBUNTU_SUITE?=$(UBUNTU_RELEASE)
MIRROR_UBUNTU_SECTION?=main universe multiverse restricted
MIRROR_MOS_UBUNTU_METHOD?=http
MIRROR_MOS_UBUNTU?=perestroika-repo-tst.infra.mirantis.net
MIRROR_MOS_UBUNTU_ROOT?=/mos-repos/ubuntu/7.0
MIRROR_MOS_UBUNTU_SUITE?=$(PRODUCT_NAME)$(PRODUCT_VERSION)
MIRROR_MOS_UBUNTU_SECTION?=main restricted
MIRROR_DOCKER?=http://mirror.fuel-infra.org/fwm/$(PRODUCT_VERSION)/docker
# MIRROR_FUEL affects build process only if YUM_REPOS variable contains 'fuel'.
# Otherwise it is ignored entirely.
# MIRROR_FUEL?=http://perestroika-repo-tst.infra.mirantis.net/mos-repos/centos/$(PRODUCT_NAME)$(PRODUCT_VERSION)-centos6-fuel/os/x86_64
MIRROR_FUEL?=http://perestroika-repo-tst.infra.mirantis.net/mos-repos/centos/$(PRODUCT_NAME)$(PRODUCT_VERSION)-centos6-fuel/os/x86_64
# Additional CentOS repos. # Additional CentOS repos.
# Each repo must be comma separated tuple with repo-name and repo-path. # Each repo must be comma separated tuple with repo-name and repo-path.
@ -263,30 +235,12 @@ FEATURE_GROUPS?=experimental
comma:=, comma:=,
FEATURE_GROUPS:=$(subst $(comma), ,$(FEATURE_GROUPS)) FEATURE_GROUPS:=$(subst $(comma), ,$(FEATURE_GROUPS))
# INTEGRATION TEST CONFIG
NOFORWARD:=1
# Path to yaml configuration file to build ISO ks.cfg # Path to yaml configuration file to build ISO ks.cfg
KSYAML?=$(SOURCE_DIR)/iso/ks.yaml KSYAML?=$(SOURCE_DIR)/iso/ks.yaml
# Docker prebuilt containers. Default is to build containers during ISO build
DOCKER_PREBUILT?=0
# Source of docker prebuilt containers archive. Works only if DOCKER_PREBUILT=true
# Examples:
# DOCKER_PREBUILT_SOURCE=http://srv11-msk.msk.mirantis.net/docker-test/fuel-images.tar.lrz
# DOCKER_PREBUILT_SOURCE=/var/fuel-images.tar.lrz make docker
DOCKER_PREBUILT_SOURCE?=http://srv11-msk.msk.mirantis.net/docker-test/fuel-images.tar.lrz
# Production variable (prod, dev, docker) # Production variable (prod, dev, docker)
PRODUCTION?=docker PRODUCTION?=docker
SANDBOX_MIRROR_CENTOS_UPSTREAM?=http://mirrors-local-msk.msk.mirantis.net/centos-$(PRODUCT_VERSION)/$(CENTOS_RELEASE)
SANDBOX_MIRROR_CENTOS_UPSTREAM_OS_BASEURL:=$(SANDBOX_MIRROR_CENTOS_UPSTREAM)/os/$(CENTOS_ARCH)/
SANDBOX_MIRROR_CENTOS_UPDATES_OS_BASEURL:=$(SANDBOX_MIRROR_CENTOS_UPSTREAM)/updates/$(CENTOS_ARCH)/
SANDBOX_MIRROR_EPEL?=http://mirror.yandex.ru/epel/
SANDBOX_MIRROR_EPEL_OS_BASEURL:=$(SANDBOX_MIRROR_EPEL)/$(CENTOS_MAJOR)/$(CENTOS_ARCH)/
# Copy local /etc/ssl certs inside SANDBOX, which used for build deb mirror and packages. # Copy local /etc/ssl certs inside SANDBOX, which used for build deb mirror and packages.
# This option should be enabled, in case you have to pass https repos for Ubuntu. # This option should be enabled, in case you have to pass https repos for Ubuntu.
SANDBOX_COPY_CERTS?=0 SANDBOX_COPY_CERTS?=0

View File

@ -3,6 +3,9 @@ IMAGES_FILES:=efiboot.img efidisk.img install.img
PXEBOOT_FILES:=initrd.img vmlinuz PXEBOOT_FILES:=initrd.img vmlinuz
EFI_FILES:=BOOTX64.conf BOOTX64.efi splash.xpm.gz EFI_FILES:=BOOTX64.conf BOOTX64.efi splash.xpm.gz
MIRROR_CENTOS_KERNEL?=$(MIRROR_CENTOS)
MIRROR_CENTOS_KERNEL_BASEURL?=$(MIRROR_CENTOS_KERNEL)/os/$(CENTOS_ARCH)
# centos isolinux files # centos isolinux files
$(addprefix $(LOCAL_MIRROR_CENTOS_OS_BASEURL)/isolinux/,$(ISOLINUX_FILES)): $(addprefix $(LOCAL_MIRROR_CENTOS_OS_BASEURL)/isolinux/,$(ISOLINUX_FILES)):
@mkdir -p $(@D) @mkdir -p $(@D)

View File

@ -2,6 +2,8 @@ include $(SOURCE_DIR)/mirror/centos/yum_repos.mk
.PHONY: show-yum-urls-centos show-yum-repos-centos .PHONY: show-yum-urls-centos show-yum-repos-centos
MIRROR_CENTOS_OS_BASEURL?=$(MIRROR_CENTOS)/os/$(CENTOS_ARCH)
$(BUILD_DIR)/mirror/centos/etc/yum.conf: $(call depv,yum_conf) $(BUILD_DIR)/mirror/centos/etc/yum.conf: $(call depv,yum_conf)
$(BUILD_DIR)/mirror/centos/etc/yum.conf: export contents:=$(yum_conf) $(BUILD_DIR)/mirror/centos/etc/yum.conf: export contents:=$(yum_conf)
$(BUILD_DIR)/mirror/centos/etc/yum.conf: $(BUILD_DIR)/mirror/centos/etc/yum.conf:

View File

@ -1,5 +1,7 @@
BASE_IMAGE_FILES:=centos.tar.xz busybox.tar.xz BASE_IMAGE_FILES:=centos.tar.xz busybox.tar.xz
MIRROR_DOCKER_BASEURL?=$(MIRROR_DOCKER)
# docker base image files # docker base image files
$(addprefix $(LOCAL_MIRROR_DOCKER_BASEURL)/,$(BASE_IMAGE_FILES)): $(addprefix $(LOCAL_MIRROR_DOCKER_BASEURL)/,$(BASE_IMAGE_FILES)):
@mkdir -p $(@D) @mkdir -p $(@D)

View File

@ -73,12 +73,14 @@ $(BUILD_DIR)/mirror/ubuntu/repo.done: \
$(BUILD_DIR)/mirror/ubuntu/mirror.done: $(BUILD_DIR)/mirror/ubuntu/mirror.done:
mkdir -p $(LOCAL_MIRROR_UBUNTU) mkdir -p $(LOCAL_MIRROR_UBUNTU)
set -ex; debmirror --method=$(MIRROR_UBUNTU_METHOD) --progress --checksums --nocleanup --host=$(MIRROR_FUEL_UBUNTU) --root=$(MIRROR_UBUNTU_ROOT) \ set -ex; debmirror --progress --checksums --nocleanup \
--arch=$(UBUNTU_ARCH) --dist=$(UBUNTU_RELEASE) --nosource --ignore-release-gpg --rsync-extra=none \ --nosource --ignore-release-gpg --rsync-extra=none \
--section=$(MIRROR_UBUNTU_SECTION) $(LOCAL_MIRROR_UBUNTU)/ --method=$(MIRROR_MOS_UBUNTU_METHOD) \
--host=$(MIRROR_MOS_UBUNTU) \
--root=$(MIRROR_MOS_UBUNTU_ROOT) \
--dist=$(MIRROR_MOS_UBUNTU_SUITE) \
--section=$(subst $(space),$(comma),$(MIRROR_MOS_UBUNTU_SECTION)) \
--arch=$(UBUNTU_ARCH) \
$(LOCAL_MIRROR_UBUNTU)/
rm -rf $(LOCAL_MIRROR_UBUNTU)/.temp $(LOCAL_MIRROR_UBUNTU)/project rm -rf $(LOCAL_MIRROR_UBUNTU)/.temp $(LOCAL_MIRROR_UBUNTU)/project
mv $(LOCAL_MIRROR_UBUNTU)/dists/trusty $(LOCAL_MIRROR_UBUNTU)/dists/mos7.0
sed -i 's/trusty/mos7.0/g' $(LOCAL_MIRROR_UBUNTU)/dists/mos7.0/Release
rm -f $(LOCAL_MIRROR_UBUNTU)/dists/mos7.0/main/binary-amd64/*bz2
$(SOURCE_DIR)/regenerate_ubuntu_repo.sh $(LOCAL_MIRROR_UBUNTU)/ mos7.0
$(ACTION.TOUCH) $(ACTION.TOUCH)

View File

@ -41,3 +41,6 @@ find-files=$(shell test -e $1 && find $1 -type f 2> /dev/null)
uc = $(shell echo $(1) | tr a-z A-Z) uc = $(shell echo $(1) | tr a-z A-Z)
comma:=, comma:=,
space:=
space+=

View File

@ -11,19 +11,19 @@ endef
define yum_upstream_repo define yum_upstream_repo
[upstream] [upstream]
name=Upstream mirror name=Upstream mirror
baseurl=$(SANDBOX_MIRROR_CENTOS_UPSTREAM_OS_BASEURL) baseurl=$(SANDBOX_MIRROR_CENTOS_UPSTREAM)/os/$(CENTOS_ARCH)/
gpgcheck=0 gpgcheck=0
priority=1 priority=1
[upstream-updates] [upstream-updates]
name=Upstream mirror name=Upstream mirror
baseurl=$(SANDBOX_MIRROR_CENTOS_UPDATES_OS_BASEURL) baseurl=$(SANDBOX_MIRROR_CENTOS_UPSTREAM)/updates/$(CENTOS_ARCH)/
gpgcheck=0 gpgcheck=0
priority=1 priority=1
endef endef
define yum_epel_repo define yum_epel_repo
[epel] [epel]
name=epel mirror name=epel mirror
baseurl=$(SANDBOX_MIRROR_EPEL_OS_BASEURL) baseurl=$(SANDBOX_MIRROR_EPEL)/$(CENTOS_MAJOR)/$(CENTOS_ARCH)/
gpgcheck=0 gpgcheck=0
priority=3 priority=3
endef endef
@ -84,25 +84,18 @@ sudo umount $(SANDBOX)/proc || true
sudo umount $(SANDBOX)/dev || true sudo umount $(SANDBOX)/dev || true
endef endef
mos_repo_release_file:=$(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT)/dists/$(PRODUCT_NAME)$(PRODUCT_VERSION)/Release
broken_mos_repo:=$(strip $(shell wget -q -O /dev/null $(mos_repo_release_file) || echo yes))
define apt_sources_list define apt_sources_list
#Upstream Ubuntu mirrors #Upstream Ubuntu mirrors
deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_SUFFIX) $(UBUNTU_RELEASE) main universe multiverse restricted deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT) $(MIRROR_UBUNTU_SUITE) $(MIRROR_UBUNTU_SECTION)
deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_SUFFIX) $(UBUNTU_RELEASE)-updates main universe multiverse restricted deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT) $(MIRROR_UBUNTU_SUITE)-updates $(MIRROR_UBUNTU_SECTION)
deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_SUFFIX) $(UBUNTU_RELEASE)-security main universe multiverse restricted deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT) $(MIRROR_UBUNTU_SUITE)-security $(MIRROR_UBUNTU_SECTION)
#MOS mirrors # MOS repos
$(if $(broken_mos_repo), deb $(MIRROR_MOS_UBUNTU_METHOD)://$(MIRROR_MOS_UBUNTU)$(MIRROR_MOS_UBUNTU_ROOT) $(MIRROR_MOS_UBUNTU_SUITE) $(MIRROR_MOS_UBUNTU_SECTION)
# XXX: broken "perestroika" repo deb $(MIRROR_MOS_UBUNTU_METHOD)://$(MIRROR_MOS_UBUNTU)$(MIRROR_MOS_UBUNTU_ROOT) $(MIRROR_MOS_UBUNTU_SUITE)-security $(MIRROR_MOS_UBUNTU_SECTION)
deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_FUEL_UBUNTU)$(MIRROR_UBUNTU_ROOT) $(UBUNTU_RELEASE) main, deb $(MIRROR_MOS_UBUNTU_METHOD)://$(MIRROR_MOS_UBUNTU)$(MIRROR_MOS_UBUNTU_ROOT) $(MIRROR_MOS_UBUNTU_SUITE)-proposed $(MIRROR_MOS_UBUNTU_SECTION)
# Normal MOS repos deb $(MIRROR_MOS_UBUNTU_METHOD)://$(MIRROR_MOS_UBUNTU)$(MIRROR_MOS_UBUNTU_ROOT) $(MIRROR_MOS_UBUNTU_SUITE)-updates $(MIRROR_MOS_UBUNTU_SECTION)
deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT) $(PRODUCT_NAME)$(PRODUCT_VERSION) main restricted deb $(MIRROR_MOS_UBUNTU_METHOD)://$(MIRROR_MOS_UBUNTU)$(MIRROR_MOS_UBUNTU_ROOT) $(MIRROR_MOS_UBUNTU_SUITE)-holdback $(MIRROR_MOS_UBUNTU_SECTION)
deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT) $(PRODUCT_NAME)$(PRODUCT_VERSION)-security main restricted
deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT) $(PRODUCT_NAME)$(PRODUCT_VERSION)-proposed main restricted
deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT) $(PRODUCT_NAME)$(PRODUCT_VERSION)-updates main restricted
deb $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT) $(PRODUCT_NAME)$(PRODUCT_VERSION)-holdback main restricted
)
#Extra repositories #Extra repositories
$(if $(EXTRA_DEB_REPOS),$(subst |,$(newline)deb ,deb $(EXTRA_DEB_REPOS))) $(if $(EXTRA_DEB_REPOS),$(subst |,$(newline)deb ,deb $(EXTRA_DEB_REPOS)))
endef endef
@ -111,11 +104,11 @@ define apt_preferences
# Apt repo @ obs-1 has Codename=trusty (which is OK) # Apt repo @ obs-1 has Codename=trusty (which is OK)
# However the one @ mirror.fuel-infra has Codename=mos6.1 # However the one @ mirror.fuel-infra has Codename=mos6.1
Package: * Package: *
Pin: release o=Mirantis, n=$(UBUNTU_RELEASE) Pin: release o=Mirantis, n=$(MIRROR_UBUNTU_SUITE)
Pin-Priority: 1101 Pin-Priority: 1101
Package: * Package: *
Pin: release o=Mirantis, n=mos$(PRODUCT_VERSION) Pin: release o=Mirantis, n=$(PRODUCT_NAME)$(PRODUCT_VERSION)
Pin-Priority: 1101 Pin-Priority: 1101
# to install packages from unmerged fuel-infra requests # to install packages from unmerged fuel-infra requests
@ -145,7 +138,7 @@ touch $(SANDBOX_UBUNTU)/etc/init.d/.legacy-bootordering
mkdir -p $(SANDBOX_UBUNTU)/usr/sbin mkdir -p $(SANDBOX_UBUNTU)/usr/sbin
cp -a $(BUILD_DIR)/policy-rc.d $(SANDBOX_UBUNTU)/usr/sbin cp -a $(BUILD_DIR)/policy-rc.d $(SANDBOX_UBUNTU)/usr/sbin
echo "Running debootstrap" echo "Running debootstrap"
sudo debootstrap --no-check-gpg --include=ca-certificates --arch=$(UBUNTU_ARCH) $(UBUNTU_RELEASE) $(SANDBOX_UBUNTU) http://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_SUFFIX) sudo debootstrap --no-check-gpg --include=ca-certificates --arch=$(UBUNTU_ARCH) $(MIRROR_UBUNTU_SUITE) $(SANDBOX_UBUNTU) $(MIRROR_UBUNTU_METHOD)://$(MIRROR_UBUNTU)$(MIRROR_UBUNTU_ROOT)
if [ -e $(SANDBOX_UBUNTU)/etc/resolv.conf ]; then sudo cp -a $(SANDBOX_UBUNTU)/etc/resolv.conf $(SANDBOX_UBUNTU)/etc/resolv.conf.orig; fi if [ -e $(SANDBOX_UBUNTU)/etc/resolv.conf ]; then sudo cp -a $(SANDBOX_UBUNTU)/etc/resolv.conf $(SANDBOX_UBUNTU)/etc/resolv.conf.orig; fi
sudo cp /etc/resolv.conf $(SANDBOX_UBUNTU)/etc/resolv.conf sudo cp /etc/resolv.conf $(SANDBOX_UBUNTU)/etc/resolv.conf
if [ -e $(SANDBOX_UBUNTU)/etc/hosts ]; then sudo cp -a $(SANDBOX_UBUNTU)/etc/hosts $(SANDBOX_UBUNTU)/etc/hosts.orig; fi if [ -e $(SANDBOX_UBUNTU)/etc/hosts ]; then sudo cp -a $(SANDBOX_UBUNTU)/etc/hosts $(SANDBOX_UBUNTU)/etc/hosts.orig; fi