├── .gitignore ├── docky.yml ├── dev.docker-compose.yml ├── Dockerfile ├── bump.sh ├── README.md ├── Gemfile ├── .github └── workflows │ └── ci.yml └── Gemfile.lock /.gitignore: -------------------------------------------------------------------------------- 1 | bundle 2 | -------------------------------------------------------------------------------- /docky.yml: -------------------------------------------------------------------------------- 1 | service: wagon 2 | user: ubuntu 3 | -------------------------------------------------------------------------------- /dev.docker-compose.yml: -------------------------------------------------------------------------------- 1 | services: 2 | wagon: 3 | image: ghcr.io/akretion/docky-ruby:latest 4 | volumes: 5 | - .:/workspace 6 | - ./bundle:/usr/local/bundle 7 | labels: 8 | docky.user: ubuntu 9 | docky.main.service: True 10 | version: '3' 11 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ghcr.io/akretion/docky-ruby:latest 2 | 3 | RUN DEBIAN_FRONTEND=noninteractive \ 4 | && apt-get update \ 5 | && apt-get install -y yarn \ 6 | && apt-get clean 7 | 8 | COPY Gemfile /gems/Gemfile 9 | COPY Gemfile.lock Gemfile.lock 10 | ENV BUNDLE_GEMFILE=/gems/Gemfile 11 | RUN bundle install 12 | -------------------------------------------------------------------------------- /bump.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | rm -f Gemfile.lock 4 | docky run bundle install 5 | git add Gemfile Gemfile.lock 6 | TAG="v4.0.x-`date +%Y%m%d`" 7 | MESSAGE="Automatic release $TAG" 8 | git commit -m "$MESSAGE" 9 | git tag -a "$TAG" -m "$MESSAGE" 10 | echo "bump done, check result the run" 11 | echo "git push origin master --tag" 12 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Docker Image for Shopinvader Wagon 2 | 3 | Wagon is the local tool to render and develop the LocomotiveCMS templates. 4 | More information here: https://locomotive-v3.readme.io/docs 5 | 6 | This image includes both Wagon and the Shopinvader plugin so you can directly use it without taking care of installing the Ruby stack on your computer. 7 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | 3 | # Use https for github source 4 | git_source(:github) do |repo_name| 5 | repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") 6 | "https://github.com/#{repo_name}.git" 7 | end 8 | 9 | gem 'locomotivecms_steam', '=1.6.0' 10 | gem 'locomotivecms_wagon', github: 'akretion/wagon', branch: 'fix-slug-404-issue-rebased' 11 | 12 | group :misc do 13 | gem 'shop_invader', github: 'shopinvader/locomotive-shopinvader', branch: 'v4.0.x' 14 | end 15 | -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: Build 2 | 3 | on: 4 | push: 5 | branches: 6 | - master 7 | tags: 8 | - '*' 9 | 10 | jobs: 11 | build-odoo: 12 | runs-on: ubuntu-latest 13 | steps: 14 | - uses: actions/checkout@v2 15 | - name: Set up Docker Buildx 16 | uses: docker/setup-buildx-action@v1 17 | - name: Login to ghcr.io 18 | uses: docker/login-action@v1 19 | with: 20 | registry: ghcr.io 21 | username: ${{ github.repository_owner }} 22 | password: ${{ secrets.GITHUB_TOKEN }} 23 | - name: Build image 24 | uses: docker/build-push-action@v2 25 | with: 26 | context: . 27 | file: Dockerfile 28 | tags: | 29 | ghcr.io/${{ github.repository }}:latest, 30 | ghcr.io/${{ github.repository }}:${{ github.ref_name }} 31 | cache-from: type=registry,ref=ghcr.io/${{ github.repository }}:latest 32 | cache-to: type=inline 33 | push: true 34 | -------------------------------------------------------------------------------- /Gemfile.lock: -------------------------------------------------------------------------------- 1 | GIT 2 | remote: https://github.com/akretion/wagon.git 3 | revision: 5775f19514dda9414cde1e03830037f92f0789ba 4 | branch: fix-slug-404-issue-rebased 5 | specs: 6 | locomotivecms_wagon (3.1.0) 7 | faker (~> 1.6) 8 | haml (~> 5.1.2) 9 | listen (~> 3.3.1) 10 | locomotivecms_coal (~> 1.7.0) 11 | locomotivecms_common (~> 0.4.0) 12 | locomotivecms_steam (~> 1.6.0) 13 | neatjson (~> 0.9) 14 | netrc (~> 0.11.0) 15 | oj (~> 3.10.16) 16 | puma (~> 5.0.4) 17 | thor (~> 0.20.3) 18 | 19 | GIT 20 | remote: https://github.com/shopinvader/locomotive-shopinvader.git 21 | revision: 82f921d1a586b9cd006fbdd4bcd0e7c61f277df9 22 | branch: v4.0.x 23 | specs: 24 | shop_invader (0.1.0) 25 | algoliasearch (~> 1.13.0) 26 | elasticsearch (~> 6.2.0) 27 | faraday (~> 0.17) 28 | jwt (~> 2.2.1) 29 | rack-utm (~> 0.0.2) 30 | 31 | GEM 32 | remote: https://rubygems.org/ 33 | specs: 34 | RedCloth (4.3.2) 35 | abstract_type (0.0.7) 36 | activesupport (5.2.8.1) 37 | concurrent-ruby (~> 1.0, >= 1.0.2) 38 | i18n (>= 0.7, < 2) 39 | minitest (~> 5.1) 40 | tzinfo (~> 1.1) 41 | adamantium (0.2.0) 42 | ice_nine (~> 0.11.0) 43 | memoizable (~> 0.4.0) 44 | addressable (2.8.1) 45 | public_suffix (>= 2.0.2, < 6.0) 46 | algoliasearch (1.13.0) 47 | httpclient (~> 2.8.3) 48 | json (>= 1.5.1) 49 | anima (0.3.2) 50 | abstract_type (~> 0.0.7) 51 | adamantium (~> 0.2) 52 | equalizer (~> 0.0.11) 53 | ast (2.4.2) 54 | attr_extras (5.2.0) 55 | autoprefixer-rails (8.0.0) 56 | execjs 57 | bcrypt (3.1.18) 58 | chronic (0.10.2) 59 | chunky_png (1.4.0) 60 | coffee-script (2.4.1) 61 | coffee-script-source 62 | execjs 63 | coffee-script-source (1.12.2) 64 | colorize (0.8.1) 65 | compass (1.0.3) 66 | chunky_png (~> 1.2) 67 | compass-core (~> 1.0.2) 68 | compass-import-once (~> 1.0.5) 69 | rb-fsevent (>= 0.9.3) 70 | rb-inotify (>= 0.9) 71 | sass (>= 3.3.13, < 3.5) 72 | compass-core (1.0.3) 73 | multi_json (~> 1.0) 74 | sass (>= 3.3.0, < 3.5) 75 | compass-import-once (1.0.5) 76 | sass (>= 3.2, < 3.5) 77 | concord (0.1.6) 78 | adamantium (~> 0.2.0) 79 | equalizer (~> 0.0.9) 80 | concurrent-ruby (1.1.10) 81 | crass (1.0.6) 82 | diff-lcs (1.5.0) 83 | dragonfly (1.4.0) 84 | addressable (~> 2.3) 85 | multi_json (~> 1.0) 86 | rack (>= 1.3) 87 | duktape (2.0.1.1) 88 | elasticsearch (6.2.0) 89 | elasticsearch-api (= 6.2.0) 90 | elasticsearch-transport (= 6.2.0) 91 | elasticsearch-api (6.2.0) 92 | multi_json 93 | elasticsearch-transport (6.2.0) 94 | faraday 95 | multi_json 96 | equalizer (0.0.11) 97 | execjs (2.8.1) 98 | faker (1.9.6) 99 | i18n (>= 0.7) 100 | faraday (0.17.6) 101 | multipart-post (>= 1.2, < 3) 102 | faraday_middleware (0.13.1) 103 | faraday (>= 0.7.4, < 1.0) 104 | ffi (1.15.5) 105 | haml (5.1.2) 106 | temple (>= 0.8.0) 107 | tilt 108 | httparty (0.16.4) 109 | mime-types (~> 3.0) 110 | multi_xml (>= 0.5.2) 111 | httpclient (2.8.3) 112 | i18n (1.12.0) 113 | concurrent-ruby (~> 1.0) 114 | ice_nine (0.11.2) 115 | json (2.6.2) 116 | jwt (2.2.3) 117 | kramdown (2.3.2) 118 | rexml 119 | liquid (4.0.3) 120 | listen (3.3.4) 121 | rb-fsevent (~> 0.10, >= 0.10.3) 122 | rb-inotify (~> 0.9, >= 0.9.10) 123 | locomotivecms_coal (1.7.0) 124 | activesupport (>= 5.1.5, < 6.1) 125 | faraday (~> 0.17) 126 | faraday_middleware (~> 0.13.1) 127 | httpclient (~> 2.8.3) 128 | mime-types (~> 3.3.0) 129 | locomotivecms_common (0.4.0) 130 | activesupport (>= 5.1.5, < 6.0) 131 | attr_extras (~> 5.2.0) 132 | colorize 133 | stringex (~> 2.8.2) 134 | locomotivecms_steam (1.6.0) 135 | RedCloth (~> 4.3.2) 136 | autoprefixer-rails (~> 8.0.0) 137 | bcrypt (~> 3.1.11) 138 | chronic (~> 0.10.2) 139 | coffee-script (~> 2.4.1) 140 | compass (~> 1.0.3) 141 | dragonfly (>= 1.2, < 1.5) 142 | duktape (~> 2.0.1.1) 143 | httparty (~> 0.16.0) 144 | kramdown (~> 2.3.0) 145 | liquid (~> 4.0.3) 146 | locomotivecms_common (~> 0.4.0) 147 | mime-types (~> 3.3.0) 148 | mimetype-fu (~> 0.1.2) 149 | moneta (~> 1.0.0) 150 | morphine (~> 0.1.1) 151 | multi_json (~> 1.15.0) 152 | nokogiri (>= 1.11, < 1.14) 153 | parser (~> 2.7) 154 | pony (~> 1.12) 155 | rack-cache (~> 1.7.0) 156 | rack-rewrite (~> 1.5.1) 157 | rack_csrf (~> 2.6.0) 158 | sanitize (~> 5.2.1) 159 | sass (~> 3.4.25) 160 | sprockets (~> 3.7.1) 161 | uglifier (~> 4.1.3) 162 | unparser (~> 0.4) 163 | mail (2.7.1) 164 | mini_mime (>= 0.1.1) 165 | memoizable (0.4.2) 166 | thread_safe (~> 0.3, >= 0.3.1) 167 | mime-types (3.3.1) 168 | mime-types-data (~> 3.2015) 169 | mime-types-data (3.2022.0105) 170 | mimetype-fu (0.1.2) 171 | mini_mime (1.1.2) 172 | mini_portile2 (2.8.0) 173 | minitest (5.16.3) 174 | moneta (1.0.0) 175 | morphine (0.1.1) 176 | mprelude (0.1.0) 177 | abstract_type (~> 0.0.7) 178 | adamantium (~> 0.2.0) 179 | concord (~> 0.1.5) 180 | equalizer (~> 0.0.9) 181 | ice_nine (~> 0.11.1) 182 | procto (~> 0.0.2) 183 | multi_json (1.15.0) 184 | multi_xml (0.6.0) 185 | multipart-post (2.2.3) 186 | neatjson (0.10.5) 187 | netrc (0.11.0) 188 | nio4r (2.5.8) 189 | nokogiri (1.13.9) 190 | mini_portile2 (~> 2.8.0) 191 | racc (~> 1.4) 192 | nokogumbo (2.0.5) 193 | nokogiri (~> 1.8, >= 1.8.4) 194 | oj (3.10.18) 195 | parser (2.7.2.0) 196 | ast (~> 2.4.1) 197 | pony (1.13.1) 198 | mail (>= 2.0) 199 | procto (0.0.3) 200 | public_suffix (5.0.0) 201 | puma (5.0.4) 202 | nio4r (~> 2.0) 203 | racc (1.6.0) 204 | rack (2.2.4) 205 | rack-cache (1.7.2) 206 | rack (>= 0.4) 207 | rack-rewrite (1.5.1) 208 | rack-utm (0.0.2) 209 | rack 210 | rack_csrf (2.6.0) 211 | rack (>= 1.1.0) 212 | rb-fsevent (0.11.2) 213 | rb-inotify (0.10.1) 214 | ffi (~> 1.0) 215 | rexml (3.2.5) 216 | sanitize (5.2.3) 217 | crass (~> 1.0.2) 218 | nokogiri (>= 1.8.0) 219 | nokogumbo (~> 2.0) 220 | sass (3.4.25) 221 | sprockets (3.7.2) 222 | concurrent-ruby (~> 1.0) 223 | rack (> 1, < 3) 224 | stringex (2.8.5) 225 | temple (0.9.1) 226 | thor (0.20.3) 227 | thread_safe (0.3.6) 228 | tilt (2.0.11) 229 | tzinfo (1.2.10) 230 | thread_safe (~> 0.1) 231 | uglifier (4.1.20) 232 | execjs (>= 0.3.0, < 3) 233 | unparser (0.5.5) 234 | abstract_type (~> 0.0.7) 235 | adamantium (~> 0.2.0) 236 | anima (~> 0.3.1) 237 | concord (~> 0.1.5) 238 | diff-lcs (~> 1.3) 239 | equalizer (~> 0.0.9) 240 | mprelude (~> 0.1.0) 241 | parser (>= 2.6.5) 242 | procto (~> 0.0.2) 243 | 244 | PLATFORMS 245 | ruby 246 | 247 | DEPENDENCIES 248 | locomotivecms_steam (= 1.6.0) 249 | locomotivecms_wagon! 250 | shop_invader! 251 | 252 | BUNDLED WITH 253 | 2.1.4 254 | --------------------------------------------------------------------------------