From 2ba50633efb907165bda7ec7857a5851020d76bc Mon Sep 17 00:00:00 2001 From: Pedro Pombeiro Date: Sat, 5 Oct 2019 23:48:03 +0200 Subject: [PATCH] Simplify regex expressions in docker parser/updater --- docker/lib/dependabot/docker/file_parser.rb | 12 ++++++------ docker/lib/dependabot/docker/file_updater.rb | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/docker/lib/dependabot/docker/file_parser.rb b/docker/lib/dependabot/docker/file_parser.rb index 7282800973..13d3b0b99d 100644 --- a/docker/lib/dependabot/docker/file_parser.rb +++ b/docker/lib/dependabot/docker/file_parser.rb @@ -13,20 +13,20 @@ module Docker class FileParser < Dependabot::FileParsers::Base require "dependabot/file_parsers/base/dependency_set" - # Detials of Docker regular expressions is at + # Details of Docker regular expressions is at # https://github.com/docker/distribution/blob/master/reference/regexp.go DOMAIN_COMPONENT = - /(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])/.freeze + /(?:[[:alnum:]]|[[:alnum:]][[[:alnum:]]-]*[[:alnum:]])/.freeze DOMAIN = /(?:#{DOMAIN_COMPONENT}(?:\.#{DOMAIN_COMPONENT})+)/.freeze - REGISTRY = /(?#{DOMAIN}(?::[0-9]+)?)/.freeze + REGISTRY = /(?#{DOMAIN}(?::\d+)?)/.freeze - NAME_COMPONENT = /(?:[a-z0-9]+(?:(?:[._]|__|[-]*)[a-z0-9]+)*)/.freeze + NAME_COMPONENT = /(?:[a-z\d]+(?:(?:[._]|__|[-]*)[a-z\d]+)*)/.freeze IMAGE = %r{(?#{NAME_COMPONENT}(?:/#{NAME_COMPONENT})*)}.freeze - FROM = /[Ff][Rr][Oo][Mm]/.freeze + FROM = /FROM/i.freeze TAG = /:(?[\w][\w.-]{0,127})/.freeze DIGEST = /@(?[^\s]+)/.freeze - NAME = /\s+AS\s+(?[a-zA-Z0-9_-]+)/.freeze + NAME = /\s+AS\s+(?[\w-]+)/.freeze FROM_LINE = %r{^#{FROM}\s+(#{REGISTRY}/)?#{IMAGE}#{TAG}?#{DIGEST}?#{NAME}?}.freeze diff --git a/docker/lib/dependabot/docker/file_updater.rb b/docker/lib/dependabot/docker/file_updater.rb index c32af80f56..30054001c5 100644 --- a/docker/lib/dependabot/docker/file_updater.rb +++ b/docker/lib/dependabot/docker/file_updater.rb @@ -7,7 +7,7 @@ module Dependabot module Docker class FileUpdater < Dependabot::FileUpdaters::Base - FROM_REGEX = /[Ff][Rr][Oo][Mm]/.freeze + FROM_REGEX = /FROM/i.freeze def self.updated_files_regex [/dockerfile/i]