diff --git a/patches/upper-constraints.txt b/patches/upper-constraints.txt
deleted file mode 100644
index c3e330d..0000000
--- a/patches/upper-constraints.txt
+++ /dev/null
@@ -1,573 +0,0 @@
-ntlm-auth===1.2.0
-voluptuous===0.11.5
-chardet===3.0.4
-rsa===4.0
-restructuredtext-lint===1.2.2
-netmiko===2.3.0
-instack-undercloud===9.4.0
-PasteDeploy===2.0.1
-typing===3.6.6
-python-saharaclient===2.2.1
-python-hnvclient===0.1.0
-Routes===2.4.1
-rtslib-fb===2.1.66
-XStatic-Angular-Bootstrap===2.2.0.0
-paunch===4.5.2
-WebOb===1.8.5
-sphinxcontrib-actdiag===0.8.5
-docopt===0.6.2
-pecan===1.3.2
-ryu===4.30
-os-api-ref===1.6.0
-python-ldap===3.1.0
-oslo.concurrency===3.29.1
-websocket-client===0.55.0
-osprofiler===2.6.1
-os-resource-classes===0.3.0
-python-ironic-inspector-client===3.5.0
-lxml===4.3.2
-python-kingbirdclient===0.2.1
-setproctitle===1.1.10
-pytest===4.3.0
-python-etcd===0.4.5
-raven===6.10.0
-cursive===0.2.2
-oslo.service===1.38.1
-django-appconf===1.0.3
-pykerberos===1.2.1
-certifi===2018.11.29
-sphinxcontrib-nwdiag===0.9.5
-requests-aws===0.1.8
-alabaster===0.7.12
-pbr===5.1.3
-munch===2.3.2
-attrs===19.1.0
-microversion-parse===0.2.1
-Pint===0.9
-oslo.i18n===3.23.1
-jsonpath-rw-ext===1.2.0
-python-mistralclient===3.8.1
-oslo.context===2.22.1
-python-senlinclient===1.10.1
-rcssmin===1.0.6
-pycadf===2.9.0
-grpcio===1.15.0
-skydive-client===0.5.0
-pysendfile===2.0.1
-fixtures===3.0.0
-neutron-lib===1.25.1
-XStatic-FileSaver===1.3.2.0
-pystache===0.5.4
-XStatic-Font-Awesome===4.7.0.0
-nose===1.3.7
-nosehtmloutput===0.0.5
-waitress===1.2.1
-os-refresh-config===10.2.2
-pysnmp===4.4.9
-sphinxcontrib-websupport===1.1.0
-Mako===1.0.7
-XStatic-angular-ui-router===0.3.1.2
-pyScss===1.3.4
-XStatic-jQuery===1.12.4.1
-jsonmodels===2.4
-ddt===1.2.1
-pyserial===3.4
-ipaddress===1.0.22;python_version=='2.7'
-python-freezerclient===2.1.0
-os-xenapi===0.3.4
-python-vitrageclient===2.7.0
-nosexcover===1.0.11
-krest===1.3.1
-psycopg2===2.7.7
-networkx===2.2
-bashate===0.6.0
-XStatic-Angular===1.5.8.0
-pyngus===2.3.0
-Pillow===5.4.1
-zuul-sphinx===0.3.0
-python-mimeparse===1.6.0
-tripleo-common===10.8.2
-Tempita===0.5.2
-ply===3.11
-requests-toolbelt===0.9.1
-simplejson===3.16.0
-suds-jurko===0.6
-python-swiftclient===3.7.1
-pyOpenSSL===19.0.0
-monasca-common===2.13.0
-scipy===1.2.1
-mypy-extensions===0.4.1;python_version=='3.4'
-mypy-extensions===0.4.1;python_version=='3.5'
-mypy-extensions===0.4.1;python_version=='3.6'
-rsd-lib===0.4.0
-XStatic-Jasmine===2.4.1.2
-python-glanceclient===2.16.0
-pyinotify===0.9.6
-debtcollector===1.21.0
-requests-unixsocket===0.1.5
-asn1crypto===0.24.0
-croniter===0.3.29
-octavia-lib===1.1.1
-python-watcherclient===2.2.0
-MarkupSafe===1.1.1
-pypowervm===1.1.20
-doc8===0.8.0
-pymongo===3.7.2
-soupsieve===1.8
-sqlparse===0.2.4
-oslotest===3.7.1
-jsonpointer===2.0
-defusedxml===0.5.0
-relativetimebuilder===0.2.0
-netaddr===0.7.19
-pyghmi===1.2.16
-sphinxcontrib-blockdiag===1.5.5
-thrift===0.11.0
-gnocchiclient===7.0.5
-wcwidth===0.1.7
-sphinxcontrib.datatemplates===0.1.0
-jsonpath-rw===1.4.0
-prettytable===0.7.2
-vine===1.2.0
-taskflow===3.5.0
-traceback2===1.4.0
-semantic-version===2.6.0
-virtualbmc===1.4.0
-deprecation===2.0.6
-SQLAlchemy===1.2.18
-pyroute2===0.5.4
-google-auth===1.6.3
-kazoo===2.6.1
-XStatic-roboto-fontface===0.5.0.0
-pyudev===0.21.0
-eventlet===0.24.1
-openstack-doc-tools===1.8.0
-frozendict===1.2
-oslo.messaging===9.5.1
-jira===2.0.0
-extras===1.0.0
-PyJWT===1.7.1
-zVMCloudConnector===1.4.0
-paramiko===2.4.2
-reno===2.11.2
-unicodecsv===0.14.1;python_version=='2.7'
-imagesize===1.1.0
-pydot===1.4.1
-pathlib===1.0.1;python_version=='2.7'
-urllib3===1.24.1
-graphviz===0.10.1
-PyKMIP===0.8.0
-whereto===0.4.0
-python-subunit===1.3.0
-tornado===4.5.3;python_version=='3.4'
-tornado===4.5.3;python_version=='3.5'
-tornado===4.5.3;python_version=='3.6'
-tornado===4.5.3;python_version=='2.7'
-pycparser===2.19
-mock===2.0.0
-PyYAML===3.13
-beautifulsoup4===4.7.1
-os-net-config===10.4.2
-ovs===2.10.0
-cryptography===2.6.1
-adal===1.2.1
-backports.ssl-match-hostname===3.7.0.1;python_version=='2.7'
-openstack-release-test===1.4.2
-pylxd===2.2.9
-ruamel.ordereddict===0.4.13;python_version=='2.7'
-pycryptodomex===3.7.3
-anyjson===0.3.3
-requests-mock===1.5.2
-os-apply-config===10.3.0
-prometheus-client===0.6.0
-oslosphinx===4.18.0
-mox3===0.27.0
-gunicorn===19.9.0
-textfsm===0.4.1
-unittest2===1.1.0
-django-compressor===2.2
-libvirt-python===5.1.0
-python-zunclient===3.3.0
-asyncio===3.4.3;python_version=='3.4'
-asyncio===3.4.3;python_version=='3.5'
-asyncio===3.4.3;python_version=='3.6'
-tzlocal===1.5.1
-python-novaclient===13.0.2
-bcrypt===3.1.6
-fixtures-git===0.1.0
-os-client-config===1.32.0
-XStatic-Angular-Gettext===2.3.8.0
-XStatic-Hogan===2.0.0.2
-XStatic-objectpath===1.2.1.0
-python-manilaclient===1.27.0
-requests===2.21.0
-snowballstemmer===1.2.1
-Jinja2===2.10
-XStatic-Bootstrap-SCSS===3.3.7.1
-pyzabbix===0.7.5
-ptyprocess===0.6.0
-threadloop===1.0.2
-amqp===2.4.2
-ruamel.yaml===0.15.89
-websockify===0.8.0
-XStatic-JQuery.quicksearch===2.0.3.1
-mpmath===1.1.0
-django-debreach===1.5.2
-sphinx-feature-classification===0.3.2
-XStatic-JQuery-Migrate===1.2.1.1
-appdirs===1.4.3
-tinyrpc===0.9.4
-google-auth-httplib2===0.0.3
-Flask-SQLAlchemy===2.3.2
-daiquiri===1.5.0
-influxdb===5.1.0
-funcparserlib===0.3.6
-passlib===1.7.1
-dib-utils===0.0.11
-cliff===2.14.1
-os-brick===2.8.3
-ansible-runner===1.2.0
-trollius===2.2;python_version=='2.7'
-scp===0.13.0
-python-zaqarclient===1.11.0
-funcsigs===1.0.2;python_version=='2.7'
-zhmcclient===0.22.0
-lockfile===0.12.2
-dnspython3===1.15.0;python_version=='3.4'
-dnspython3===1.15.0;python_version=='3.5'
-dnspython3===1.15.0;python_version=='3.6'
-ldappool===2.4.1
-termcolor===1.1.0
-hiredis===1.0.0
-google-api-python-client===1.7.8
-castellan===1.2.2
-oslo.versionedobjects===1.35.1
-webcolors===1.8.1
-aodhclient===1.2.0
-autobahn===19.2.1
-SQLAlchemy-Utils===0.33.11
-pluggy===0.9.0
-coverage===4.5.2
-freezegun===0.3.11
-python-pytun===2.3.0
-pyperclip===1.7.0
-cassandra-driver===3.17.0
-mox===0.5.3
-XStatic-Angular-Schema-Form===0.8.13.0
-gabbi===1.45.0
-nwdiag===1.0.4
-XStatic-bootswatch===3.3.7.0
-XStatic-JS-Yaml===3.8.1.0
-XStatic-term.js===0.0.7.0
-oslo.log===3.42.3
-nodeenv===1.3.3
-pylev===1.3.0
-python-searchlightclient===1.5.1
-oslo.middleware===3.37.1
-XStatic-mdi===1.6.50.2
-django-pyscss===2.0.2
-uritemplate===3.0.0
-django-babel===0.6.2
-docutils===0.14
-notifier===1.0.3
-os-ken===0.3.1
-pycrypto===2.6.1
-ujson===1.35
-selenium===3.141.0
-python-glareclient===0.5.3
-mypy===0.670;python_version=='3.4'
-mypy===0.670;python_version=='3.5'
-mypy===0.670;python_version=='3.6'
-mistral-lib===1.1.1
-Click===7.0
-dogtag-pki===10.3.5.1
-XStatic-Angular-UUID===0.0.4.0
-sphinxcontrib-seqdiag===0.8.5
-os-win===4.2.1
-dictdiffer===0.7.2
-retrying===1.3.3
-shade===1.31.0
-pathlib2===2.3.3
-pydotplus===2.0.2
-flask-oslolog===0.1
-jeepney===0.4;python_version=='3.4'
-jeepney===0.4;python_version=='3.5'
-jeepney===0.4;python_version=='3.6'
-stestr===2.2.0
-singledispatch===3.4.0.3;python_version=='2.7'
-oslo.serialization===2.28.2
-warlock===1.3.0
-exabgp===4.0.10
-sphinxcontrib-httpdomain===1.7.0
-metalsmith===0.11.1
-thriftpy===0.3.9;python_version=='2.7'
-text-unidecode===1.2
-murano-pkg-check===0.3.0
-oslo.vmware===2.32.2
-sqlalchemy-migrate===0.12.0
-python-monascaclient===1.15.0
-ldap3===2.5.2
-requests-ntlm===1.1.0
-python-string-utils===0.6.0
-automaton===1.16.0
-os-service-types===1.6.0
-keyring===18.0.0
-testscenarios===0.5.0
-sphinxcontrib-pecanwsme===0.9.0
-sadisplay===0.4.9
-enum34===1.1.6
-packaging===19.0
-flask-keystone===0.2
-nose-exclude===0.5.0
-psutil===5.6.0
-py===1.8.0
-txaio===18.8.1
-python-qinlingclient===2.1.0
-elasticsearch===2.4.1
-django-nose===1.4.6
-XStatic-JQuery.TableSorter===2.14.5.1
-pifpaf===2.2.2
-pysmi===0.3.3
-blockdiag===1.5.4
-testtools===2.3.0
-Parsley===1.3
-XStatic-tv4===1.2.7.0
-XStatic-JSEncrypt===2.3.1.1
-python-cinderclient===4.2.1
-keystonemiddleware===6.0.0
-django-formtools===2.1
-python-ceilometerclient===2.9.0
-XStatic-Spin===1.2.5.2
-openshift===0.8.6
-tap-as-a-service===3.0.0
-os-traits===0.11.0
-SecretStorage===2.3.1;python_version=='2.7'
-SecretStorage===3.1.1;python_version=='3.4'
-SecretStorage===3.1.1;python_version=='3.5'
-SecretStorage===3.1.1;python_version=='3.6'
-opentracing===1.3.0
-XStatic-Rickshaw===1.5.0.0
-iso8601===0.1.12
-tooz===1.64.2
-linecache2===1.0.0
-oauth2client===4.1.3
-idna===2.8
-python-karborclient===1.2.0
-weakrefmethod===1.0.3;python_version=='2.7'
-PuLP===1.6.9
-crc16===0.1.1
-protobuf===3.7.0
-os-dpm===1.1.0
-sushy===1.8.2
-python-neutronclient===6.12.1
-pika===0.13.0
-oslo.cache===1.33.3
-WebTest===2.0.33
-openstack.nose-plugin===0.11
-os-collect-config===10.3.1
-python-qpid-proton===0.27.0
-python-octaviaclient===1.8.1
-pysaml2===4.6.5
-requests-oauthlib===1.2.0
-oslo.reports===1.29.2
-ceilometermiddleware===1.4.0
-python-nss===1.0.1
-testrepository===0.0.20
-sympy===1.3
-sphinxmark===0.1.19
-PyNaCl===1.3.0
-osc-lib===1.12.1
-python-consul===1.1.0
-Faker===1.0.2
-more-itertools===5.0.0;python_version=='2.7'
-more-itertools===6.0.0;python_version=='3.4'
-more-itertools===6.0.0;python_version=='3.5'
-more-itertools===6.0.0;python_version=='3.6'
-seqdiag===0.9.6
-numpy===1.16.2
-msgpack===0.6.1
-Sphinx===1.8.4
-oslo.config===6.8.2
-tempest===20.0.0
-django-floppyforms===1.7.0
-openstackdocstheme===1.29.2
-osc-placement===1.5.0
-zake===0.2.2
-python-rsdclient===0.1.3
-python-magic===0.4.15
-python-solumclient===2.8.0
-PyMySQL===0.9.3
-kubernetes===8.0.1
-httplib2===0.12.1
-bottle===0.12.16
-betamax===0.8.1
-construct===2.8.22
-pyparsing===2.3.1
-dogpile.cache===0.7.1
-python-barbicanclient===4.8.1
-salt===2019.2.0
-tricircleclient===0.5.0
-WSME===0.9.3
-proboscis===1.2.6.0
-fortiosclient===0.0.3
-oslo.upgradecheck===0.2.1
-stevedore===1.30.1
-botocore===1.12.108
-xmltodict===0.12.0
-pyasn1===0.4.5
-oslo.rootwrap===5.15.3
-Django===1.11.20;python_version=='2.7'
-Django===2.0.13;python_version=='3.4'
-Django===2.0.13;python_version=='3.5'
-Django===2.0.13;python_version=='3.6'
-pexpect===4.6.0
-cmd2===0.8.9
-redis===3.2.0
-jmespath===0.9.4
-atomicwrites===1.3.0
-docker-pycreds===0.4.0
-XStatic-smart-table===1.4.13.2
-kuryr-lib===0.9.0
-scrypt===0.8.13
-jsonpatch===1.23
-python-daemon===2.2.3
-typed-ast===1.3.1;python_version=='3.4'
-typed-ast===1.3.1;python_version=='3.5'
-typed-ast===1.3.1;python_version=='3.6'
-os-testr===1.0.0
-cotyledon===1.7.3
-stomp.py===4.1.21
-xattr===0.9.6
-systemd-python===234
-python-memcached===1.59
-openstacksdk===0.27.0
-six===1.12.0
-dulwich===0.19.11
-kombu===4.4.0
-distro===1.4.0
-betamax-matchers===0.4.0
-yaql===1.1.3
-requestsexceptions===1.4.0
-testresources===2.0.1
-falcon===1.4.1
-subprocess32===3.5.3;python_version=='2.7'
-etcd3gw===0.2.4
-Flask-RESTful===0.3.7
-GitPython===2.1.11
-python-ironicclient===2.7.3
-XStatic===1.0.2
-XStatic-Angular-FileUpload===12.0.4.0
-python-openstackclient===3.18.1
-pyzmq===18.0.1
-oslo.db===4.45.0
-simplegeneric===0.8.1
-python-pcre===0.7
-yappi===1.0
-abclient===0.2.3
-pymemcache===2.1.1
-wrapt===1.11.1
-oslo.privsep===1.32.2
-sphinxcontrib-apidoc===0.3.0
-oslo.policy===2.1.2
-python-muranoclient===1.2.0
-hvac===0.7.2
-pyeclib===1.5.0
-wsgi-intercept===1.8.0
-ndg-httpsclient===0.5.1;python_version=='2.7'
-repoze.lru===0.7
-rfc3986===1.2.0
-tenacity===5.0.3
-python-designateclient===2.11.0
-future===0.17.1
-Paste===3.0.7
-jaeger-client===3.13.0
-XStatic-Json2yaml===0.1.1.0
-boto===2.49.0
-functools32===3.2.3.post2;python_version=='2.7'
-os-vif===1.15.2
-python-masakariclient===5.4.0
-Werkzeug===0.14.1
-backports.functools-lru-cache===1.5;python_version=='2.7'
-pyasn1-modules===0.2.4
-entrypoints===0.3
-APScheduler===3.5.3
-monotonic===1.5
-python-smaugclient===0.0.8
-python-troveclient===2.17.1
-etcd3===0.8.1
-XStatic-Bootstrap-Datepicker===1.3.1.0
-CouchDB===1.2
-netifaces===0.10.9
-cachetools===3.1.0
-ws4py===0.5.1
-backports-abc===0.5;python_version=='2.7'
-keystoneauth1===3.13.1
-statsd===3.3.0
-XenAPI===1.2
-python-keystoneclient===3.19.0
-ceilometer===12.0.0
-demjson===2.2.4
-diskimage-builder===2.30.0
-heat-translator===1.3.1
-python-magnumclient===2.12.0
-docker===3.7.0
-qpid-python===1.36.0.post1;python_version=='2.7'
-contextlib2===0.5.5;python_version=='2.7'
-XStatic-Angular-lrdragndrop===1.0.2.4
-python-congressclient===1.12.0
-ovsdbapp===0.15.0
-aniso8601===5.1.0
-rjsmin===1.0.12
-icalendar===4.0.3
-configparser===3.7.3;python_version=='2.7'
-decorator===4.3.2
-cffi===1.12.2
-futurist===1.8.1
-jsonschema===2.6.0
-python-blazarclient===2.1.0
-alembic===1.0.8
-glance-store===0.28.0
-sphinxcontrib-programoutput===0.13
-sphinx-testing===1.0.0
-dnspython===1.15.0;python_version=='3.4'
-dnspython===1.15.0;python_version=='3.5'
-dnspython===1.15.0;python_version=='3.6'
-dnspython===1.16.0;python_version=='2.7'
-oauthlib===3.0.1
-Babel===2.6.0
-logutils===0.3.5
-scandir===1.9.0;python_version=='2.7'
-sphinxcontrib-fulltoc===1.2.0
-smmap2===2.0.5
-greenlet===0.4.15
-XStatic-Angular-Vis===4.16.0.0
-confluent-kafka===0.11.6
-xvfbwrapper===0.2.9
-futures===3.2.0;python_version=='2.7'
-tosca-parser===1.4.0
-Flask===1.0.2
-happybase===1.1.0;python_version=='2.7'
-marathon===0.11.0
-fasteners===0.14.1
-sortedcontainers===2.1.0
-python-tackerclient===0.15.0
-python-heatclient===1.17.0
-kafka-python===1.4.4
-oslo.utils===3.40.5
-python-editor===1.0.4
-gitdb2===2.0.5
-requests-kerberos===0.12.0
-itsdangerous===1.1.0
-XStatic-jquery-ui===1.12.1.1
-monasca-statsd===1.11.0
-python-dateutil===2.8.0
-virtualenv===16.4.3
-colorama===0.4.1
-ironic-lib===2.16.4
-pytz===2018.9
-XStatic-D3===3.5.17.0
-actdiag===0.5.4
-sysv-ipc===1.0.0
-scikit-learn===0.20.3
-horizon===15.2.0
-uwsgi===2.0.17.1
diff --git a/snapcraft.yaml b/snapcraft.yaml
index f160120..8a144ce 100644
--- a/snapcraft.yaml
+++ b/snapcraft.yaml
@@ -419,7 +419,7 @@ parts:
       - libvirt
       - patches
     constraints:
-      - https://raw.githubusercontent.com/openstack/requirements/stable/stein/upper-constraints.txt
+      - ${SNAPCRAFT_STAGE}/patches/upper-constraints.txt
     source: http://tarballs.openstack.org/keystone/keystone-stable-stein.tar.gz
     python-packages:
       - libvirt-python
@@ -561,6 +561,16 @@ parts:
       - uca-sources
     source: patches/
     plugin: dump
+    override-build: |
+      # Create ${SNAPCRAFT_STAGE}/patches/upper-constraints
+
+      # Fetch upstream file
+      curl https://raw.githubusercontent.com/openstack/requirements/stable/stein/upper-constraints.txt --output ./upper-constraints.txt
+
+      # Fix https://bugs.launchpad.net/microstack/+bug/1867360
+      sed -e 's/pyScss===1.3.4/git+https:\/\/github.com\/petevg\/pyScss.git#egg=pyScss/' -i ./upper-constraints.txt
+
+      snapcraftctl build
     organize:
       '*' : patches/
     prime:
@@ -928,7 +938,7 @@ parts:
     requirements:
       - requirements.txt
     constraints:
-      - https://raw.githubusercontent.com/openstack/requirements/stable/stein/upper-constraints.txt
+      - ${SNAPCRAFT_STAGE}/patches/upper-constraints.txt
     source: tools/cluster
     override-build: |
       # Hack to avoid conflict between openstack-projects'