]> git.openstreetmap.org Git - rails.git/commitdiff
Merge remote-tracking branch 'upstream/pull/4055'
authorTom Hughes <tom@compton.nu>
Wed, 31 May 2023 17:40:07 +0000 (18:40 +0100)
committerTom Hughes <tom@compton.nu>
Wed, 31 May 2023 17:40:07 +0000 (18:40 +0100)
.gitignore
Dockerfile
INSTALL.md
Vagrantfile
script/vagrant/setup/provision.sh

index 75e9eb59e73fe2fb5dfe474e590dfed8fd748c67..e5866532e5299d4815f527ae4bd2dc74c196680a 100644 (file)
@@ -1,5 +1,6 @@
 *~
 .DS_Store
+.bundle/config
 .idea
 .ruby-gemset
 .ruby-version
index 78be28838980e2d561641071d48659fd2ac40ddd..f3c56e1615c922c53a91dd5aaae86ea9a51c0d64 100644 (file)
@@ -20,16 +20,16 @@ RUN apt-get update \
       libxslt1-dev \
       locales \
       postgresql-client \
-      ruby3.0 \
-      ruby3.0-dev \
+      ruby \
+      ruby-dev \
+      ruby-bundler \
       software-properties-common \
       tzdata \
       unzip \
- && curl https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - \
- && add-apt-repository -y -U https://deb.nodesource.com/node_18.x \
- && apt-get install --no-install-recommends -y \
       nodejs \
+      npm \
  && npm install --global yarn \
+ # We can't use snap packages for firefox inside a container, so we need to get firefox+geckodriver elsewhere
  && add-apt-repository -y ppa:mozillateam/ppa \
  && echo "Package: *\nPin: release o=LP-PPA-mozillateam\nPin-Priority: 1001" > /etc/apt/preferences.d/mozilla-firefox \
  && apt-get install --no-install-recommends -y \
@@ -49,8 +49,7 @@ WORKDIR /app
 
 # Install Ruby packages
 ADD Gemfile Gemfile.lock /app/
-RUN gem install bundler \
- && bundle install
+RUN bundle install
 
 # Install NodeJS packages using yarn
 ADD package.json yarn.lock /app/
index 787c81ee7c5fef10fcfd38737cb21448c492bbbd..74c736f4c735d6d29d9693d3a7f15819e0966d1b 100644 (file)
@@ -31,12 +31,12 @@ These can be installed on Ubuntu 22.04 or later with:
 
 ```
 sudo apt-get update
-sudo apt-get install ruby3.0 libruby3.0 ruby3.0-dev \
+sudo apt-get install ruby ruby-dev ruby-bundler \
                      libvips-dev libxml2-dev libxslt1-dev nodejs \
-                     build-essential git-core firefox-geckodriver \
+                     build-essential git-core \
                      postgresql postgresql-contrib libpq-dev libsasl2-dev \
-                     libffi-dev libgd-dev libarchive-dev libbz2-dev yarnpkg
-sudo gem3.0 install bundler
+                     libffi-dev libgd-dev libarchive-dev libbz2-dev npm
+sudo npm install --global yarn
 ```
 
 ### Alternative platforms
index 2ef8991231eefbb81141a82ab342ce3039e4fb88..7895d3b86cc4c0f6bf25bb5997fc6343d4286a2c 100644 (file)
@@ -4,7 +4,7 @@
 Vagrant.configure("2") do |config|
   # use official ubuntu image for virtualbox
   config.vm.provider "virtualbox" do |vb, override|
-    override.vm.box = "ubuntu/focal64"
+    override.vm.box = "ubuntu/jammy64"
     override.vm.synced_folder ".", "/srv/openstreetmap-website"
     vb.customize ["modifyvm", :id, "--memory", "4096"]
     vb.customize ["modifyvm", :id, "--cpus", "2"]
@@ -16,13 +16,13 @@ Vagrant.configure("2") do |config|
 
   # use third party image and sshfs or NFS sharing for lxc
   config.vm.provider "lxc" do |_, override|
-    override.vm.box = "generic/ubuntu2004"
+    override.vm.box = "generic/ubuntu2204"
     override.vm.synced_folder ".", "/srv/openstreetmap-website", :type => sharing_type
   end
 
   # use third party image and sshfs or NFS sharing for libvirt
   config.vm.provider "libvirt" do |_, override|
-    override.vm.box = "generic/ubuntu2004"
+    override.vm.box = "generic/ubuntu2204"
     override.vm.synced_folder ".", "/srv/openstreetmap-website", :type => sharing_type
   end
 
index afabc48857535866304c6888553be361340f12ae..d34c46008e9363eddfb6bb4d68b98efdfc8bce5f 100644 (file)
@@ -16,12 +16,12 @@ apt-get update
 apt-get upgrade -y
 
 # install packages as explained in INSTALL.md
-apt-get install -y ruby2.7 libruby2.7 ruby2.7-dev \
-                     libxml2-dev libxslt1-dev nodejs yarnpkg \
-                     build-essential git-core firefox-geckodriver \
+apt-get install -y ruby ruby-dev ruby-bundler \
+                     libxml2-dev libxslt1-dev nodejs npm \
+                     build-essential git-core \
                      postgresql postgresql-contrib libpq-dev libvips-dev \
                      libsasl2-dev libffi-dev libgd-dev libarchive-dev libbz2-dev
-gem2.7 install --version "~> 2.1.4" bundler
+npm install --global yarn
 
 ## install the bundle necessary for openstreetmap-website
 pushd /srv/openstreetmap-website
@@ -33,8 +33,6 @@ bundle exec bin/yarn install
 db_user_exists=`sudo -u postgres psql postgres -tAc "select 1 from pg_roles where rolname='vagrant'"`
 if [ "$db_user_exists" != "1" ]; then
     sudo -u postgres createuser -s vagrant
-    sudo -u vagrant createdb -E UTF-8 -O vagrant openstreetmap
-    sudo -u vagrant createdb -E UTF-8 -O vagrant osm_test
 fi
 
 # set up sample configs
@@ -45,6 +43,8 @@ if [ ! -f config/storage.yml ]; then
     cp config/example.storage.yml config/storage.yml
 fi
 touch config/settings.local.yml
+# create the databases
+sudo -u vagrant bundle exec rails db:create
 # migrate the database to the latest version
 sudo -u vagrant bundle exec rails db:migrate
 popd