From 0864e6e45ba3eb34b4c199f834b5dd6813140b7f Mon Sep 17 00:00:00 2001 From: scope2229 Date: Mon, 17 Oct 2022 04:44:17 +0000 Subject: [PATCH] updated ruby version to 2.7.3, updated gem versions --- .devcontainer/Dockerfile | 36 ++++++++++++++++++++++ .devcontainer/create-db-user.sql | 2 ++ .devcontainer/devcontainer.json | 21 +++++++++++++ .devcontainer/docker-compose.yml | 52 ++++++++++++++++++++++++++++++++ .ruby-version | 2 +- lib/odata/version.rb | 2 +- odata.gemspec | 18 +++++------ 7 files changed, 122 insertions(+), 11 deletions(-) create mode 100644 .devcontainer/Dockerfile create mode 100644 .devcontainer/create-db-user.sql create mode 100644 .devcontainer/devcontainer.json create mode 100644 .devcontainer/docker-compose.yml diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000..21f98d2 --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,36 @@ +# [Choice] Ruby version: 2, 2.7, 2.6, 2.5 +ARG VARIANT=2.7-bullseye +FROM mcr.microsoft.com/vscode/devcontainers/ruby:0-${VARIANT} + +# Install Rails +RUN gem install rails webdrivers + +# Default value to allow debug server to serve content over GitHub Codespace's port forwarding service +# The value is a comma-separated list of allowed domains +ENV RAILS_DEVELOPMENT_HOSTS=".githubpreview.dev" + +# [Choice] Node.js version: lts/*, 16, 14, 12, 10 +ARG NODE_VERSION="lts/*" +RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1" + +# [Optional] Uncomment this section to install additional OS packages. +RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ + && apt-get -y install --no-install-recommends graphicsmagick postgresql-client redis-server curl + +# [Optional] Uncomment this line to install global node packages. +# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g " 2>&1 +RUN gem install foreman bundler:2.2.33 rubocop rufo + +RUN apt-get update && \ + apt-get install -y gnupg wget curl unzip --no-install-recommends && \ + wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \ + echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list && \ + apt-get update -y && \ + apt-get install -y google-chrome-stable && \ + CHROMEVER=$(google-chrome --product-version | grep -o "[^\.]*\.[^\.]*\.[^\.]*") && \ + DRIVERVER=$(curl -s "https://chromedriver.storage.googleapis.com/LATEST_RELEASE_$CHROMEVER") && \ + wget -q --continue -P /chromedriver "http://chromedriver.storage.googleapis.com/$DRIVERVER/chromedriver_linux64.zip" && \ + unzip /chromedriver/chromedriver* -d /chromedriver + +# Put Chromedriver into the PATH +ENV PATH $CHROMEDRIVER_DIR:$PATH diff --git a/.devcontainer/create-db-user.sql b/.devcontainer/create-db-user.sql new file mode 100644 index 0000000..f461860 --- /dev/null +++ b/.devcontainer/create-db-user.sql @@ -0,0 +1,2 @@ +CREATE USER vscode CREATEDB SUPERUSER; +CREATE DATABASE vscode WITH OWNER vscode; \ No newline at end of file diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000..c813e82 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,21 @@ +{ + "name": "odata", + "dockerComposeFile": "docker-compose.yml", + "service": "app", + "workspaceFolder": "/workspace", + // Set *default* container specific settings.json values on container create. + "settings": {}, + // Add the IDs of extensions you want installed when the container is created. + "extensions": [ + "rebornix.Ruby", + "jnbt.vscode-rufo" + ], + // Use 'forwardPorts' to make a list of ports inside the container available locally. + // "forwardPorts": [3000], + // Use 'postCreateCommand' to run commands after the container is created. + // "postCreateCommand": "bundle install && yarn && rake db:setup", + // start redis-server after subsequent start of the devcontainer + "postStartCommand": "sudo /etc/init.d/redis-server start", + // Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root. + "remoteUser": "vscode" +} \ No newline at end of file diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml new file mode 100644 index 0000000..2b91fd1 --- /dev/null +++ b/.devcontainer/docker-compose.yml @@ -0,0 +1,52 @@ +version: '3' + +services: + app: + build: + context: .. + dockerfile: .devcontainer/Dockerfile + args: + # [Choice] Ruby version: 3, 3.0, 2, 2.7, 2.6, 2.5 + VARIANT: "2.7-bullseye" + # [Choice] Node.js version: lts/*, 16, 14, 12, 10 + NODE_VERSION: "lts/*" + + init: true + volumes: + - ..:/workspace:cached + - app-data:/home/vscode/data + + # Overrides default command so things don't shut down after the process ends. + command: sleep infinity + + # Runs app on the same network as the database container, allows "forwardPorts" in devcontainer.json function. + network_mode: service:db + + environment: + DATABASE_HOST: localhost + DATABASE_USER: vscode + HOST: 0.0.0.0 + + # Uncomment the next line to use a non-root user for all processes. + user: vscode + + # Use "forwardPorts" in **devcontainer.json** to forward an app port locally. + # (Adding the "ports" property to this file will not forward from a Codespace.) + + db: + image: postgres:latest + restart: unless-stopped + volumes: + - postgres-data:/var/lib/postgresql/data + - ./create-db-user.sql:/docker-entrypoint-initdb.d/create-db-user.sql + environment: + POSTGRES_USER: postgres + POSTGRES_DB: postgres + POSTGRES_PASSWORD: postgres + + # Add "forwardPorts": ["5432"] to **devcontainer.json** to forward PostgreSQL locally. + # (Adding the "ports" property to this file will not forward from a Codespace.) + +volumes: + postgres-data: + app-data: \ No newline at end of file diff --git a/.ruby-version b/.ruby-version index cd57a8b..2c9b4ef 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -2.1.5 +2.7.3 diff --git a/lib/odata/version.rb b/lib/odata/version.rb index 53ded95..dce35f0 100644 --- a/lib/odata/version.rb +++ b/lib/odata/version.rb @@ -1,3 +1,3 @@ module OData - VERSION = '0.6.18' + VERSION = '0.7.0' end diff --git a/odata.gemspec b/odata.gemspec index 2f40de5..da63ba3 100644 --- a/odata.gemspec +++ b/odata.gemspec @@ -18,17 +18,17 @@ Gem::Specification.new do |spec| spec.test_files = spec.files.grep(%r{^(test|spec|features)/}) spec.require_paths = %w{lib} - spec.add_development_dependency 'bundler', '~> 1.6' + spec.add_development_dependency 'bundler', '~> 2.1.4' spec.add_development_dependency 'rake' - spec.add_development_dependency 'simplecov', '~> 0.8.2' + spec.add_development_dependency 'simplecov', '~> 0.21.2' spec.add_development_dependency 'codeclimate-test-reporter' - spec.add_development_dependency 'rspec', '~> 3.0.0' - spec.add_development_dependency 'rspec-autotest', '~> 1.0.0' - spec.add_development_dependency 'autotest', '~> 4.4.6' - spec.add_development_dependency 'vcr', '~> 2.9.2' - spec.add_development_dependency 'timecop', '~> 0.7.1' + spec.add_development_dependency 'rspec', '~> 3.11.0' + spec.add_development_dependency 'rspec-autotest', '~> 1.0.2' + spec.add_development_dependency 'autotest', '~> 5.0.0' + spec.add_development_dependency 'vcr', '~> 6.1.0' + spec.add_development_dependency 'timecop', '~> 0.9.5' - spec.add_dependency 'nokogiri', '~> 1.6.2' - spec.add_dependency 'typhoeus', '~> 0.6.8' + spec.add_dependency 'nokogiri', '~> 1.13.8' + spec.add_dependency 'typhoeus', '~> 1.4.0' spec.add_dependency 'andand', '~> 1.3.3' end