diff --git a/.travis.yml b/.travis.yml
index cc1f953acaa41868c45aeed509a7481b0ec562e9..7deb298f0fa11d709774d47b33f6aabff2ff8ff1 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -76,11 +76,11 @@ before_install:
   - docker run -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
   - docker ps -a
   # install crystal
-  - curl -sSL https://dist.crystal-lang.org/apt/setup.sh | sudo bash
-  - curl -sL "https://keybase.io/crystal/pgp_keys.asc" | sudo apt-key add -
-  - echo "deb https://dist.crystal-lang.org/apt crystal main" | sudo tee /etc/apt/sources.list.d/crystal.list
-  - sudo apt-get update
+  - echo 'deb http://download.opensuse.org/repositories/devel:/languages:/crystal/xUbuntu_16.04/ /' | sudo tee /etc/apt/sources.list.d/devel:languages:crystal.list
+  - curl -fsSL https://download.opensuse.org/repositories/devel:languages:crystal/xUbuntu_16.04/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/devel_languages_crystal.gpg > /dev/null
+  - sudo apt update
   - sudo apt install crystal
+  - crystal --version
   - curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --version 1.22.0
   - export PATH="$HOME/.yarn/bin:$PATH"
   # install rust
diff --git a/samples/client/petstore/crystal/bin/ameba b/samples/client/petstore/crystal/bin/ameba
index 332b8c750a451f5455b78b2c2e41f80e6e6a8ea3..c88ac4a8d026b5de83d40b977412745b246ff610 100755
Binary files a/samples/client/petstore/crystal/bin/ameba and b/samples/client/petstore/crystal/bin/ameba differ
diff --git a/samples/client/petstore/crystal/pom.xml b/samples/client/petstore/crystal/pom.xml
index f4b890f7d8021a6aa4c2cbb8f5dc3b51af870555..29b7e4bc3516ba85c802d1b34283fb2190125fb9 100644
--- a/samples/client/petstore/crystal/pom.xml
+++ b/samples/client/petstore/crystal/pom.xml
@@ -34,6 +34,10 @@
                         </goals>
                         <configuration>
                             <executable>shards</executable>
+                            <arguments>
+                                <argument>install</argument>
+                                <argument>--ignore-crystal-version</argument>
+                            </arguments>
                         </configuration>
                     </execution>
                     <execution>
diff --git a/samples/client/petstore/crystal/shard.lock b/samples/client/petstore/crystal/shard.lock
index 97567adcb9e5b6d46310466583fe92aa2bc21b17..6a33ec4f671f2efdb8adcb03027eb55226bd31db 100644
--- a/samples/client/petstore/crystal/shard.lock
+++ b/samples/client/petstore/crystal/shard.lock
@@ -2,23 +2,23 @@ version: 2.0
 shards:
   ameba:
     git: https://github.com/crystal-ameba/ameba.git
-    version: 0.13.3
+    version: 0.14.3
 
   crest:
     git: https://github.com/mamantoha/crest.git
-    version: 0.26.1
+    version: 0.26.8
 
   exception_page:
     git: https://github.com/crystal-loot/exception_page.git
-    version: 0.1.4
+    version: 0.1.5
 
   http-client-digest_auth:
     git: https://github.com/mamantoha/http-client-digest_auth.git
-    version: 0.4.0
+    version: 0.6.0
 
   http_proxy:
     git: https://github.com/mamantoha/http_proxy.git
-    version: 0.7.2
+    version: 0.8.0
 
   kemal:
     git: https://github.com/kemalcr/kemal.git
@@ -26,7 +26,7 @@ shards:
 
   kilt:
     git: https://github.com/jeromegn/kilt.git
-    version: 0.4.0
+    version: 0.4.1
 
   radix:
     git: https://github.com/luislavena/radix.git