diff --git a/build.ini b/build.ini
deleted file mode 100644
index 7849d9b4190db3863751692aafd923d37b614ac7..0000000000000000000000000000000000000000
--- a/build.ini
+++ /dev/null
@@ -1,63 +0,0 @@
-[ceilometer-base]
-type = url
-location = http://tarballs.openstack.org/ceilometer/ceilometer-master.tar.gz
-
-[cinder-base]
-type = url
-location = http://tarballs.openstack.org/cinder/cinder-master.tar.gz
-
-[designate-base]
-type = url
-location = http://tarballs.openstack.org/designate/designate-master.tar.gz
-
-[glance-base]
-type = url
-location = http://tarballs.openstack.org/glance/glance-master.tar.gz
-
-[gnocchi-base]
-type = url
-location = http://tarballs.openstack.org/gnocchi/gnocchi-master.tar.gz
-
-[heat-base]
-type = url
-location = http://tarballs.openstack.org/heat/heat-master.tar.gz
-
-[horizon]
-type = url
-location = http://tarballs.openstack.org/horizon/horizon-master.tar.gz
-
-[ironic-base]
-type = url
-location = http://tarballs.openstack.org/ironic/ironic-master.tar.gz
-
-[keystone]
-type = url
-location = http://tarballs.openstack.org/keystone/keystone-master.tar.gz
-
-[magnum-base]
-type = url
-location = http://tarballs.openstack.org/magnum/magnum-master.tar.gz
-
-[murano-base]
-type = url
-location = http://tarballs.openstack.org/murano/murano-master.tar.gz
-
-[neutron-base]
-type = url
-location = http://tarballs.openstack.org/neutron/neutron-master.tar.gz
-
-[nova-base]
-type = url
-location = http://tarballs.openstack.org/nova/nova-master.tar.gz
-
-[nova-novncproxy]
-type = url
-location = http://github.com/kanaka/noVNC/tarball/v0.5.1
-
-[swift-base]
-type = url
-location = http://tarballs.openstack.org/swift/swift-master.tar.gz
-
-[zaqar]
-type = url
-location = http://tarballs.openstack.org/zaqar/zaqar-master.tar.gz
diff --git a/doc/image-building.rst b/doc/image-building.rst
index 1d8c4fdc0b96560388ece293c7d317a3696589e4..e7008db595d3355cabd09e560606e042c18ea452 100644
--- a/doc/image-building.rst
+++ b/doc/image-building.rst
@@ -75,8 +75,10 @@ You can change it to ``source`` using the following command:
 
     tools/build.py -t source
 
-The locations of OpenStack source code are written in ``build.ini``.
-Now the source type support ``url`` and ``git``. The ``build.ini`` looks like:
+The locations of OpenStack source code are written in
+``etc/kolla/kolla-build.conf``.
+Now the source type support ``url`` and ``git``. The
+``etc/kolla/kolla-build.conf`` looks like:
 
 ::
 
diff --git a/etc/kolla/kolla-build.conf b/etc/kolla/kolla-build.conf
index b682b3401b2cb71b63ad38d83fae164451172e28..aec6ca6f7a9d9dfee58a36fb91cf685970d11f83 100644
--- a/etc/kolla/kolla-build.conf
+++ b/etc/kolla/kolla-build.conf
@@ -41,3 +41,81 @@
 
 # Path to custome file to be addded at end of Dockerfiles for final images
 #include_footer = /path/to/footer_file
+
+
+# Provide location of sources for source install builds.
+# Example:
+#
+# [image-name]
+# type = url
+# location: http://address/of/archive.tgz
+#
+# [another-image-name]
+# type = git
+# location: git://address/of/repository.git
+# reference: stable  # git reference to pull, commit sha, tag or branch name
+#                    # pulls from master branch unless specified otherwise
+
+[ceilometer-base]
+type = url
+location = http://tarballs.openstack.org/ceilometer/ceilometer-master.tar.gz
+
+[cinder-base]
+type = url
+location = http://tarballs.openstack.org/cinder/cinder-master.tar.gz
+
+[designate-base]
+type = url
+location = http://tarballs.openstack.org/designate/designate-master.tar.gz
+
+[glance-base]
+type = url
+location = http://tarballs.openstack.org/glance/glance-master.tar.gz
+
+[gnocchi-base]
+type = url
+location = http://tarballs.openstack.org/gnocchi/gnocchi-master.tar.gz
+
+[heat-base]
+type = url
+location = http://tarballs.openstack.org/heat/heat-master.tar.gz
+
+[horizon]
+type = url
+location = http://tarballs.openstack.org/horizon/horizon-master.tar.gz
+
+[ironic-base]
+type = url
+location = http://tarballs.openstack.org/ironic/ironic-master.tar.gz
+
+[keystone]
+type = url
+location = http://tarballs.openstack.org/keystone/keystone-master.tar.gz
+
+[magnum-base]
+type = url
+location = http://tarballs.openstack.org/magnum/magnum-master.tar.gz
+
+[murano-base]
+type = url
+location = http://tarballs.openstack.org/murano/murano-master.tar.gz
+
+[neutron-base]
+type = url
+location = http://tarballs.openstack.org/neutron/neutron-master.tar.gz
+
+[nova-base]
+type = url
+location = http://tarballs.openstack.org/nova/nova-master.tar.gz
+
+[nova-novncproxy]
+type = url
+location = http://github.com/kanaka/noVNC/tarball/v0.5.1
+
+[swift-base]
+type = url
+location = http://tarballs.openstack.org/swift/swift-master.tar.gz
+
+[zaqar]
+type = url
+location = http://tarballs.openstack.org/zaqar/zaqar-master.tar.gz
diff --git a/kolla/cmd/build.py b/kolla/cmd/build.py
index 7859d16463d5c112766cf9814af2d3149ebbbd50..d0972d491c6a3970fd84bfa4f9894c1cbcc01790 100755
--- a/kolla/cmd/build.py
+++ b/kolla/cmd/build.py
@@ -296,11 +296,11 @@ class KollaWorker(object):
         self.type_ = config['type']
         self.tag = config['tag']
         self.prefix = self.base + '-' + self.type_ + '-'
-        self.source_location = ConfigParser.SafeConfigParser()
-        self.source_location.read(os.path.join(self.base_dir, 'build.ini'))
         self.include_header = config['include_header']
         self.include_footer = config['include_footer']
         self.regex = config['regex']
+        self.source_location = ConfigParser.SafeConfigParser()
+        self.source_location.read(find_config_file('kolla-build.conf'))
 
         self.image_statuses_bad = dict()
         self.image_statuses_good = dict()
diff --git a/setup.cfg b/setup.cfg
index 9a33df49615724f7f566960be5882568a25cde1e..86514738fee2b3b366a480d9c68dcb428648a724 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -29,7 +29,6 @@ data_files =
     share/kolla/vagrant = vagrant/*
     share/kolla = tools/init-runonce
     share/kolla = tools/openrc-example
-    share/kolla = build.ini
 
 scripts =
     tools/kolla-ansible