class ContinuousIntegration::Server

class to perform the server operations

Attributes

root[RW]

Perform Continuous Integration operations!

Example:

>> server = ContinuousIntegration.setup_server
>> ContinuousIntegration.start_server server
=> INFO  WEBrick x.x.x

Arguments:

server: (Object)
server[RW]

Perform Continuous Integration operations!

Example:

>> server = ContinuousIntegration.setup_server
>> ContinuousIntegration.start_server server
=> INFO  WEBrick x.x.x

Arguments:

server: (Object)

Public Class Methods

setup_server() click to toggle source

setup the CI server config

# File lib/continuous_integration/server.rb, line 32
def self.setup_server
        # path for the web server to serve the test results
        @root = File.expand_path "#{API_SPECS_PATH}/logs"

        # create the server
        @server = self.create_server

        # mount the dir
        dir_mount

        # shut server down on any interrupt
        trap('INT') do
                shutdown_server
        end
end
shutdown_server() click to toggle source
# File lib/continuous_integration/server.rb, line 48
def self.shutdown_server
        dir_unmount
        @server.shutdown
end
start_server() click to toggle source
# File lib/continuous_integration/server.rb, line 26
def self.start_server
        self.setup_server
        @server.start
end

Private Class Methods

create_server() click to toggle source
# File lib/continuous_integration/server.rb, line 55
def self.create_server
        WEBrick::HTTPServer.new(
                Port: PORT_NUM,
                DocumentRoot: @root,
                DirectoryIndex: []
        )
end
dir_mount() click to toggle source
# File lib/continuous_integration/server.rb, line 63
def self.dir_mount
        @server.mount SUB_URI, DockerEndpoint
end
dir_unmount() click to toggle source
# File lib/continuous_integration/server.rb, line 67
def self.dir_unmount
        @server.unmount SUB_URI
end