Class: Rubysmith::Configuration::Model

Inherits:
Struct
  • Object
show all
Defined in:
lib/rubysmith/configuration/model.rb

Overview

Defines the common configuration content for use throughout the gem.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#author_emailObject

Returns the value of attribute author_email

Returns:

  • (Object)

    the current value of author_email



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def author_email
  @author_email
end

#author_family_nameObject

Returns the value of attribute author_family_name

Returns:

  • (Object)

    the current value of author_family_name



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def author_family_name
  @author_family_name
end

#author_given_nameObject

Returns the value of attribute author_given_name

Returns:

  • (Object)

    the current value of author_given_name



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def author_given_name
  @author_given_name
end

#author_urlObject

Returns the value of attribute author_url

Returns:

  • (Object)

    the current value of author_url



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def author_url
  @author_url
end

#build_amazing_printObject

Returns the value of attribute build_amazing_print

Returns:

  • (Object)

    the current value of build_amazing_print



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_amazing_print
  @build_amazing_print
end

#build_caliberObject

Returns the value of attribute build_caliber

Returns:

  • (Object)

    the current value of build_caliber



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_caliber
  @build_caliber
end

#build_circle_ciObject

Returns the value of attribute build_circle_ci

Returns:

  • (Object)

    the current value of build_circle_ci



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_circle_ci
  @build_circle_ci
end

#build_citationObject

Returns the value of attribute build_citation

Returns:

  • (Object)

    the current value of build_citation



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_citation
  @build_citation
end

#build_cliObject

Returns the value of attribute build_cli

Returns:

  • (Object)

    the current value of build_cli



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_cli
  @build_cli
end

#build_communityObject

Returns the value of attribute build_community

Returns:

  • (Object)

    the current value of build_community



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_community
  @build_community
end

#build_conductObject

Returns the value of attribute build_conduct

Returns:

  • (Object)

    the current value of build_conduct



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_conduct
  @build_conduct
end

#build_consoleObject

Returns the value of attribute build_console

Returns:

  • (Object)

    the current value of build_console



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_console
  @build_console
end

#build_contributionsObject

Returns the value of attribute build_contributions

Returns:

  • (Object)

    the current value of build_contributions



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_contributions
  @build_contributions
end

#build_debugObject

Returns the value of attribute build_debug

Returns:

  • (Object)

    the current value of build_debug



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_debug
  @build_debug
end

#build_fundingObject

Returns the value of attribute build_funding

Returns:

  • (Object)

    the current value of build_funding



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_funding
  @build_funding
end

#build_gitObject

Returns the value of attribute build_git

Returns:

  • (Object)

    the current value of build_git



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_git
  @build_git
end

#build_git_hubObject

Returns the value of attribute build_git_hub

Returns:

  • (Object)

    the current value of build_git_hub



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_git_hub
  @build_git_hub
end

#build_git_hub_ciObject

Returns the value of attribute build_git_hub_ci

Returns:

  • (Object)

    the current value of build_git_hub_ci



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_git_hub_ci
  @build_git_hub_ci
end

#build_git_lintObject

Returns the value of attribute build_git_lint

Returns:

  • (Object)

    the current value of build_git_lint



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_git_lint
  @build_git_lint
end

#build_guardObject

Returns the value of attribute build_guard

Returns:

  • (Object)

    the current value of build_guard



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_guard
  @build_guard
end

#build_irb_kitObject

Returns the value of attribute build_irb_kit

Returns:

  • (Object)

    the current value of build_irb_kit



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_irb_kit
  @build_irb_kit
end

#build_licenseObject

Returns the value of attribute build_license

Returns:

  • (Object)

    the current value of build_license



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_license
  @build_license
end

#build_maximumObject

Returns the value of attribute build_maximum

Returns:

  • (Object)

    the current value of build_maximum



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_maximum
  @build_maximum
end

#build_minimumObject

Returns the value of attribute build_minimum

Returns:

  • (Object)

    the current value of build_minimum



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_minimum
  @build_minimum
end

#build_rakeObject

Returns the value of attribute build_rake

Returns:

  • (Object)

    the current value of build_rake



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_rake
  @build_rake
end

#build_readmeObject

Returns the value of attribute build_readme

Returns:

  • (Object)

    the current value of build_readme



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_readme
  @build_readme
end

#build_reekObject

Returns the value of attribute build_reek

Returns:

  • (Object)

    the current value of build_reek



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_reek
  @build_reek
end

#build_refinementsObject

Returns the value of attribute build_refinements

Returns:

  • (Object)

    the current value of build_refinements



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_refinements
  @build_refinements
end

#build_rspecObject

Returns the value of attribute build_rspec

Returns:

  • (Object)

    the current value of build_rspec



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_rspec
  @build_rspec
end

#build_rtcObject

Returns the value of attribute build_rtc

Returns:

  • (Object)

    the current value of build_rtc



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_rtc
  @build_rtc
end

#build_securityObject

Returns the value of attribute build_security

Returns:

  • (Object)

    the current value of build_security



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_security
  @build_security
end

#build_setupObject

Returns the value of attribute build_setup

Returns:

  • (Object)

    the current value of build_setup



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_setup
  @build_setup
end

#build_simple_covObject

Returns the value of attribute build_simple_cov

Returns:

  • (Object)

    the current value of build_simple_cov



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_simple_cov
  @build_simple_cov
end

#build_versionsObject

Returns the value of attribute build_versions

Returns:

  • (Object)

    the current value of build_versions



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_versions
  @build_versions
end

#build_zeitwerkObject

Returns the value of attribute build_zeitwerk

Returns:

  • (Object)

    the current value of build_zeitwerk



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def build_zeitwerk
  @build_zeitwerk
end

#citation_affiliationObject

Returns the value of attribute citation_affiliation

Returns:

  • (Object)

    the current value of citation_affiliation



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def citation_affiliation
  @citation_affiliation
end

#citation_messageObject

Returns the value of attribute citation_message

Returns:

  • (Object)

    the current value of citation_message



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def citation_message
  @citation_message
end

#citation_orcidObject

Returns the value of attribute citation_orcid

Returns:

  • (Object)

    the current value of citation_orcid



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def citation_orcid
  @citation_orcid
end

#documentation_formatObject

Returns the value of attribute documentation_format

Returns:

  • (Object)

    the current value of documentation_format



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def documentation_format
  @documentation_format
end

#git_hub_userObject

Returns the value of attribute git_hub_user

Returns:

  • (Object)

    the current value of git_hub_user



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def git_hub_user
  @git_hub_user
end

#license_labelObject

Returns the value of attribute license_label

Returns:

  • (Object)

    the current value of license_label



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def license_label
  @license_label
end

#license_nameObject

Returns the value of attribute license_name

Returns:

  • (Object)

    the current value of license_name



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def license_name
  @license_name
end

#license_versionObject

Returns the value of attribute license_version

Returns:

  • (Object)

    the current value of license_version



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def license_version
  @license_version
end

#loaded_atObject

Returns the value of attribute loaded_at

Returns:

  • (Object)

    the current value of loaded_at



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def loaded_at
  @loaded_at
end

#organization_urlObject

Returns the value of attribute organization_url

Returns:

  • (Object)

    the current value of organization_url



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def organization_url
  @organization_url
end

#project_nameObject

Returns the value of attribute project_name

Returns:

  • (Object)

    the current value of project_name



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_name
  @project_name
end

#project_url_communityObject

Returns the value of attribute project_url_community

Returns:

  • (Object)

    the current value of project_url_community



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_community
  @project_url_community
end

#project_url_conductObject

Returns the value of attribute project_url_conduct

Returns:

  • (Object)

    the current value of project_url_conduct



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_conduct
  @project_url_conduct
end

#project_url_contributionsObject

Returns the value of attribute project_url_contributions

Returns:

  • (Object)

    the current value of project_url_contributions



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_contributions
  @project_url_contributions
end

#project_url_downloadObject

Returns the value of attribute project_url_download

Returns:

  • (Object)

    the current value of project_url_download



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_download
  @project_url_download
end

#project_url_fundingObject

Returns the value of attribute project_url_funding

Returns:

  • (Object)

    the current value of project_url_funding



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_funding
  @project_url_funding
end

#project_url_homeObject

Returns the value of attribute project_url_home

Returns:

  • (Object)

    the current value of project_url_home



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_home
  @project_url_home
end

#project_url_issuesObject

Returns the value of attribute project_url_issues

Returns:

  • (Object)

    the current value of project_url_issues



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_issues
  @project_url_issues
end

#project_url_licenseObject

Returns the value of attribute project_url_license

Returns:

  • (Object)

    the current value of project_url_license



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_license
  @project_url_license
end

#project_url_securityObject

Returns the value of attribute project_url_security

Returns:

  • (Object)

    the current value of project_url_security



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_security
  @project_url_security
end

#project_url_sourceObject

Returns the value of attribute project_url_source

Returns:

  • (Object)

    the current value of project_url_source



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_source
  @project_url_source
end

#project_url_versionsObject

Returns the value of attribute project_url_versions

Returns:

  • (Object)

    the current value of project_url_versions



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_url_versions
  @project_url_versions
end

#project_versionObject

Returns the value of attribute project_version

Returns:

  • (Object)

    the current value of project_version



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def project_version
  @project_version
end

#target_rootObject

Returns the value of attribute target_root

Returns:

  • (Object)

    the current value of target_root



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def target_root
  @target_root
end

#template_pathObject

Returns the value of attribute template_path

Returns:

  • (Object)

    the current value of template_path



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def template_path
  @template_path
end

#template_rootsObject

Returns the value of attribute template_roots

Returns:

  • (Object)

    the current value of template_roots



11
12
13
# File 'lib/rubysmith/configuration/model.rb', line 11

def template_roots
  @template_roots
end

Instance Method Details

#ascii_doc?Boolean

Returns:

  • (Boolean)


120
# File 'lib/rubysmith/configuration/model.rb', line 120

def ascii_doc? = documentation_format == "adoc"

#author_nameObject



82
# File 'lib/rubysmith/configuration/model.rb', line 82

def author_name = [author_given_name, author_family_name].compress.join(" ")

#computed_project_url_communityObject



98
# File 'lib/rubysmith/configuration/model.rb', line 98

def computed_project_url_community = format_url(__method__)

#computed_project_url_conductObject



100
# File 'lib/rubysmith/configuration/model.rb', line 100

def computed_project_url_conduct = format_url(__method__)

#computed_project_url_contributionsObject



102
# File 'lib/rubysmith/configuration/model.rb', line 102

def computed_project_url_contributions = format_url(__method__)

#computed_project_url_downloadObject



104
# File 'lib/rubysmith/configuration/model.rb', line 104

def computed_project_url_download = format_url(__method__)

#computed_project_url_fundingObject



106
# File 'lib/rubysmith/configuration/model.rb', line 106

def computed_project_url_funding = format_url(__method__)

#computed_project_url_homeObject



108
# File 'lib/rubysmith/configuration/model.rb', line 108

def computed_project_url_home = format_url(__method__)

#computed_project_url_issuesObject



110
# File 'lib/rubysmith/configuration/model.rb', line 110

def computed_project_url_issues = format_url(__method__)

#computed_project_url_licenseObject



112
# File 'lib/rubysmith/configuration/model.rb', line 112

def computed_project_url_license = format_url(__method__)

#computed_project_url_securityObject



114
# File 'lib/rubysmith/configuration/model.rb', line 114

def computed_project_url_security = format_url(__method__)

#computed_project_url_sourceObject



116
# File 'lib/rubysmith/configuration/model.rb', line 116

def computed_project_url_source = format_url(__method__)

#computed_project_url_versionsObject



118
# File 'lib/rubysmith/configuration/model.rb', line 118

def computed_project_url_versions = format_url(__method__)

#license_label_versionObject



84
# File 'lib/rubysmith/configuration/model.rb', line 84

def license_label_version = [license_label, license_version].compress.join("-")

#markdown?Boolean

Returns:

  • (Boolean)


122
# File 'lib/rubysmith/configuration/model.rb', line 122

def markdown? = documentation_format == "md"

#maximizeObject



78
# File 'lib/rubysmith/configuration/model.rb', line 78

def maximize = update_build_options true

#minimizeObject



80
# File 'lib/rubysmith/configuration/model.rb', line 80

def minimize = update_build_options false

#pathwayObject



124
125
126
# File 'lib/rubysmith/configuration/model.rb', line 124

def pathway
  Pathway[start_root: template_root, start_path: template_path, end_root: target_root]
end

#project_classObject



86
# File 'lib/rubysmith/configuration/model.rb', line 86

def project_class = project_namespaced_class.split("::").last

#project_labelObject



90
# File 'lib/rubysmith/configuration/model.rb', line 90

def project_label = project_name.titleize

#project_levelsObject



92
# File 'lib/rubysmith/configuration/model.rb', line 92

def project_levels = project_namespaced_class.split("::").size - 1

#project_namespaced_classObject



88
# File 'lib/rubysmith/configuration/model.rb', line 88

def project_namespaced_class = project_name.camelcase

#project_pathObject



94
# File 'lib/rubysmith/configuration/model.rb', line 94

def project_path = project_name.snakecase

#project_rootObject



96
# File 'lib/rubysmith/configuration/model.rb', line 96

def project_root = target_root.join(project_name)

#template_rootObject



128
129
130
131
# File 'lib/rubysmith/configuration/model.rb', line 128

def template_root
  Array(template_roots).map(&:expand_path)
                       .find { |path| path.join(String(template_path)).exist? }
end