Environment construction support device, system, method, and program

The environment construction support device simplifies the creation and maintenance of IaC code by generating template codes based on selected notations and managing different tool versions, addressing the complexity caused by frequent updates and syntax changes.

JP7691026B2Active Publication Date: 2025-06-11NEC CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2024502775
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-02-28
Publication Date
2025-06-11
Estimated Expiration
2042-02-28

AI Technical Summary

Technical Problem

The frequent updates to environment construction tools and changes in IaC code syntax specifications complicate the maintenance and creation of IaC code, as engineers need to modify the code and manage complex settings.

Method used

An environment construction support device and system that includes a reception unit for selecting notations, a specifying unit for identifying corresponding code sets, a generation unit for creating template codes, and a display unit for showing the generated code, all while managing different tool versions and coding rules.

Benefits of technology

This solution efficiently assists in creating IaC code by simplifying the process of managing code updates and syntax changes, reducing the complexity of maintenance and enabling engineers to create code even without full knowledge of the syntax and description rules.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007691026000001
    Figure 0007691026000001
  • Figure 0007691026000002
    Figure 0007691026000002
  • Figure 0007691026000003
    Figure 0007691026000003
Patent Text Reader

Abstract

An environment construction assistance device (1) comprises: a reception unit (11) that receives a selection of a notation related to processing objectives of a prescribed environment construction tool in an information system; an identification unit (12) that identifies, for each of the processing objectives of the environment construction tool, a first set corresponding to the selected notation from among first registered information in which is registered sets of code character strings that can be described by the environment construction tool in order to be executed and accompanying character strings that can be described and accompany said code character strings; a generation unit (13) that uses the code character string and accompanying code character string included in the identified first set to generate a model code to be executed by the selected environment construction tool; and a display unit (14) that displays the generated model code in a code display field on a screen.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an environment construction support device, system, method, and program.

Background Art

[0002] In recent years, a method called IaC (Infrastructure as Code) has been increasingly popular as a technique for automating the environment construction of information systems. An environment construction tool (or orchestrator) that realizes IaC uses a program code called IaC code to execute environment construction processing. The IaC code is a script file in which environment construction processing, setting values for each environment, and the like are described.

[0003] Patent Document 1 discloses a technique related to an environment construction support system. The environment construction support system requires a constant design document and a definition file template described according to the format and definition of a specific environment construction tool. A conversion tool provided by the environment construction tool converts the constant design document, the definition file template, etc. into a constant setting value file in a predetermined format. The environment construction tool generates a definition file and a construction script using the converted constant setting value file as an input. Then, the environment construction support system executes the generated definition file and construction script on the server to be constructed to construct the environment.

[0004] Patent Document 2 discloses a technique related to a system construction parameter management system. The system collects system definition information that defines the operating environment of the target system, extracts parameters from the system definition information, and updates the parameters in the existing IaC code to the extracted parameters.

Prior Art Documents

Patent Documents

[0005]

Patent Document 1

Patent Document 2

SUMMARY OF THE INVENTION

PROBLEMS TO BE SOLVED BY THE INVENTION

[0006] Here, the environment construction tool is frequently updated, and the syntax specifications of the IaC code are often changed with each update. Therefore, with the update of the environment construction tool, there is a problem that engineers need to modify the IaC code, and the maintenance is complicated. For example, in the technology according to Patent Document 1, the maintenance of the setting items of the definition file in the constant design document and the definition file template can be complicated. Note that the technology according to Patent Document 2 is a technology for updating the parameters of the created IaC code, and does not consider the change in the syntax specifications of the IaC code due to the version change of the environment construction tool.

[0007] An object of the present disclosure is to provide an environment construction support device, system, method, and program for efficiently assisting the creation of IaC code according to an environment construction tool in view of the above-described problems.

MEANS FOR SOLVING THE PROBLEMS

[0008] The environment construction support device according to the first aspect of the present disclosure includes: a reception unit that receives a selection of a notation related to a processing purpose in a predetermined environment construction tool in an information system; a specifying unit that specifies a first set corresponding to the selected notation from first registration information in which a set of a code string that can be described for execution by the environment construction tool and an accompanying string that can be described along with the code string is registered for each of the processing purposes in the environment construction tool; a generation unit that generates a template code for execution by the selected environment construction tool using the code string and the accompanying string included in the specified first set; a display unit that displays the generated template code in a code display column on a screen; and is provided with.

[0009] The environment construction support system according to the second aspect of the present disclosure is a storage device that stores first registration information in which a set of a code string that can be described for execution by the environment construction tool and an accompanying string that can be described in association with the code string is registered for each processing purpose in a predetermined environment construction tool in an information system; and an environment construction support device connected to the storage device. The environment construction support device includes a reception unit that receives a selection of a notation related to the processing purpose in the predetermined environment construction tool, a specification unit that specifies a first set corresponding to the selected notation from the first registration information, a generation unit that generates a template code for execution by the selected environment construction tool using the code string and the accompanying string included in the specified first set, and a display unit that displays the generated template code in a code display field on the screen. It is provided with.

[0010] The environment construction support method according to the third aspect of the present disclosure is a computer receives a selection of a notation related to the processing purpose in a predetermined environment construction tool in an information system, specifies a first set corresponding to the selected notation from first registration information in which a set of a code string that can be described for execution by the environment construction tool and an accompanying string that can be described in association with the code string is registered for each processing purpose in the environment construction tool, generates a template code for execution by the selected environment construction tool using the code string and the accompanying string included in the specified first set, and displays the generated template code in a code display field on the screen.

[0011] The environment construction support program according to the fourth aspect of the present disclosure is An acceptance process that accepts a selection of notations regarding the processing purpose in a predetermined environment construction tool in an information system, and For each of the processing purposes in the environment construction tool, a specific process of identifying a first set corresponding to the selected notation from among first registration information in which a set of code strings that can be described for execution by the environment construction tool and accompanying strings that can be described in association with the code strings is registered; A generation process of generating a template code for execution by the selected environment construction tool using the code string and the accompanying string included in the identified first set; A display process of displaying the generated template code in a code display field on the screen; Causing a computer to execute.

Advantages of the Invention

[0012] According to the present disclosure, it is possible to provide an environment construction support device, system, method, and program for efficiently assisting in creating IaC code according to an environment construction tool.

Brief Description of the Drawings

[0013]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Mode for Carrying Out the Invention

[0014] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. In each drawing, the same or corresponding elements are denoted by the same reference numerals, and redundant descriptions are omitted as necessary for clarity of explanation.

[0015] <Embodiment 1> FIG. 1 is a block diagram showing the configuration of the environment construction support apparatus 1 according to Embodiment 1. The environment construction support apparatus 1 is an information processing apparatus for supporting the construction of the environment of an information system. The environment construction support apparatus 1 includes a reception unit 11, a specification unit 12, a generation unit 13, and a display unit 14.

[0016] The reception unit 11 receives a selection of a notation regarding the processing purpose in a predetermined environment construction tool in the information system. For example, the reception unit 11 may receive the notation selected by the user. Here, the “information system” includes one or more servers, network devices, storage devices, etc. Further, the “information system” is constructed on a system environment that is on-premises, cloud-based, virtual-based, or a combination thereof. The “environment construction tool” is software for performing the environment construction process of the information system on the system environment. The “environment construction tool” executes the environment construction process using a program code called an IaC code. Also, the “processing purpose” indicates the purpose of various processes executed by the environment construction tool. And the “notation regarding the processing purpose” is display information indicating the processing purpose, a character string of the program code corresponding to the processing purpose (code string for the code), etc.

[0017] The specific unit 12 identifies a first set corresponding to the selected notation from among the first registration information. Here, the "first registration information" is information in which sets of code strings and accompanying strings are registered for each processing purpose in the environment construction tool. The "code string" is a string of program code that can be described to be executed by the environment construction tool. The "accompanying string" is a string of program code that can be described in association with the code string.

[0018] The generation unit 13 generates a template code for execution by the selected environment construction tool using the code string and the accompanying string included in the identified first set. Here, the "template code" is a partial description of the IaC code. That is, the "template code" is an incomplete IaC code before inputting setting values and the like specific to the environment at the time of environment construction. The display unit 14 displays the generated template code in the code display column on the screen.

[0019] FIG. 2 is a flowchart showing the flow of the environment construction support method according to Embodiment 1. First, the reception unit 11 receives a selection of a notation related to a processing purpose in a predetermined environment construction tool (S11). Next, the specific unit 12 identifies a first set corresponding to the selected notation from among the first registration information (S12). Then, the generation unit 13 generates a template code for execution by the selected environment construction tool using the code string and the accompanying string included in the identified first set (S13). After that, the display unit 14 displays the generated template code in the code display column on the screen (S14).

[0020] In this way, the environment construction support device 1 according to the present embodiment complements and displays a character string of program code that can be described in a predetermined environment construction tool according to the notation regarding the processing purpose in the environment construction tool selected by, for example, the person in charge of creating the IaC code. Therefore, even if the person in charge of creating the IaC code does not grasp the syntax, description rules, etc. that can be executed by the environment construction tool, they can create an IaC code according to the environment construction tool. Therefore, according to the present embodiment, it is possible to support the efficient creation of an IaC code according to the environment construction tool.

[0021] Incidentally, the environment construction support device 1 includes a processor, a memory, and a storage device as a configuration not shown in the figure. Further, a computer program in which the processing of the environment construction support method according to the present embodiment is implemented is stored in the storage device. Then, the processor causes the memory to read the computer program etc. from the storage device and executes the computer program. Thereby, the processor realizes the functions of the reception unit 11, the specification unit 12, the generation unit 13, and the display unit 14.

[0022] Alternatively, each component of the environment construction support device 1 may be realized by dedicated hardware. Also, some or all of the components of each device may be realized by general-purpose or dedicated circuitry, a processor, etc. or a combination thereof. These may be constituted by a single chip or by a plurality of chips connected via a bus. Some or all of the components of each device may be realized by a combination of the above-described circuitry, etc. and a program. Also, as the processor, a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an FPGA (Field-Programmable Gate Array), a quantum processor (quantum computer control chip), etc. can be used.

[0023] <Embodiment 2> Embodiment 2 is a specific example of Embodiment 1 described above. FIG. 3 is a block diagram showing the configuration of the environment construction support system 1000 according to Embodiment 2. The environment construction support system 1000 is an information system for supporting the environment construction of the information system 100. The environment construction support system 1000 includes an information system 100, an environment construction device 200, an environment construction support device 300, and a management terminal 301. Each of the information system 100, the environment construction device 200, and the environment construction support device 300 is connected via a network N. The network N is a communication network including a wireless communication line network, a mobile phone line network, etc. The network N may include the Internet. Also, the communication network is not limited to the type of communication protocol. The information system 100 is an information system during development, testing, operation, etc.

[0024] The environment construction device 200 is an information processing device including environment construction tools 201 to 20n (n is a natural number of 2 or more). Examples of the environment construction tools 201 etc. include, but are not limited to, Ansible (registered trademark), Teraform, etc. The environment construction device 200 receives the designation of the environment construction tool and the input of the IaC code from the environment construction support device 300, and causes the designated environment construction tool to execute the IaC code. Thereby, the environment of the information system 100 is constructed.

[0025] The environment construction support device 300 is an example of the environment construction support device 1 described above. The environment construction support device 300 is an information processing device for supporting the environment construction of the information system 100. The environment construction support device 300 may be redundant in a plurality of computers, and each functional block may be realized by a plurality of computers.

[0026] The management terminal 301 is a terminal device operated by the person in charge of creating the IaC code, the administrator of the environment construction tool, etc., and is, for example, a personal computer or the like. The management terminal 301 is communicably connected to the environment construction support device 300 via a network or the like, and accesses the environment construction support device 300 according to the operations of the administrator or the like to input information and the like. Note that the management terminal 301 may also be connected to the environment construction device 200 and the network N.

[0027] Note that the environment construction device 200 only needs to include at least one environment construction tool. That is, the environment construction device 200 may be realized by a plurality of computers. Alternatively, part or all of the environment construction device 200, the environment construction support device 300, and the management terminal 301 may be configured by the same hardware. Alternatively, the environment construction device 200 and the environment construction support device 300 may be made redundant by a plurality of computers. Also, there may be a plurality of management terminals 301.

[0028] FIG. 4 is a block diagram showing the configuration of the environment construction support device 300 according to the second embodiment. The environment construction support device 300 includes a storage unit 310, a memory 320, a communication unit 330, and a control unit 340. The storage unit 310 is an example of a storage device such as a hard disk or a flash memory. The storage unit 310 stores an environment construction support program 311, a tool list 312, module registration information 313, and support option registration information 314. The environment construction support program 311 is a computer program in which the environment construction support process and the like according to the second embodiment are implemented.

[0029] The tool list 312 is a list of environment construction tools that the environment construction support device 300 supports for IaC code creation. FIG. 5 is a diagram showing an example of the tool list 312 according to the second embodiment. The tool list 312 is information that associates an ID, the name of the environment construction tool, the code type, etc. The code type is the type of programming language executable by the corresponding environment construction tool. For example, when the environment construction tool is Ansible (registered trademark), the code type is a playbook described in YAML (YAML Ain’t Markup Language), and when the environment construction tool is Teraform, the code type is HCL (HashiCorp Configuration Language), but it is not limited to these. Further, the tool list 312 may further associate the versions of the environment construction tool and the code type, the syntax rules in the code type, the description rules (coding rules), etc.

[0030] Returning to FIG. 4, the description will continue. The module registration information 313 is an example of the first registration information described above. The module registration information 313 is information that registers a set of a code string for the code defined by the code type of each environment construction tool and an accompanying string for each processing purpose in a plurality of environment construction tools. Since the "code string" is called a "module" depending on the code type, it will be referred to as the "main module" hereinafter. The "accompanying string" includes an option string that can be specified in the main module and a connection string for connecting the option and the set value.

[0031] FIG. 6 is a diagram showing an example of the module registration information 313 according to the second embodiment. The module registration information 313 is information that associates an ID, a processing purpose, a code type, a main module, an option, a connection string, etc. The processing purpose is a notation indicating the purpose of processing in the environment construction tool and the code type. The main module is a notation of a code string that can be described in the code type for the corresponding processing purpose. The option is a notation of an option string. The connection string is a notation of a string for connecting the option and the set value.

[0032] Return to FIG. 4 and continue the description. The support option registration information 314 is an example of the second registration information. The support option registration information 314 is information registering a set of a code string and an accompanying string supported in a specific version in the environment construction tool. FIG. 7 is a diagram showing an example of the support option registration information 314 according to the second embodiment. The support option registration information 314 is information associating an ID, a processing purpose, a code type, a main module, an option, a version, an attribute, etc. The "version" is a version number or the like supported by the code type or the environment construction tool associated with the code type. The "attribute" is information indicating whether it is "applied only" to the supported version, "applied after" the version, "applied up to" the version, or the like. Alternatively, the "attribute" may be information indicating that it is "not applicable" or "not supported" in the version.

[0033] Return to FIG. 4 and continue the description. The memory 320 is a volatile storage device such as a RAM (Random Access Memory), and is a storage area for temporarily holding information during the operation of the control unit 340. The communication unit 330 is a communication interface between the inside and the outside of the environment construction support device 300.

[0034] The control unit 340 is a processor, that is, a control device that controls each component of the environment construction support device 300. The control unit 340 causes the memory 320 to read the environment construction support program 311 from the storage unit 310 and executes the environment construction support program 311. Thereby, the control unit 340 realizes the functions of the reception unit 341, the specifying unit 342, the generation unit 343, the display unit 344, and the output unit 345.

[0035] The reception unit 341 is an example of the reception unit 11 described above. The reception unit 341 receives, as a selection of a predetermined environment construction tool, one of a plurality of environment construction tools from the IaC code creation screen described later. Further, the reception unit 341 receives a selection of a version in the selected predetermined environment construction tool from the IaC code creation screen. Also, the reception unit 341 receives a selection of a notation regarding the processing purpose in the selected environment construction tool from among the processing purpose selection fields within the IaC code creation screen.

[0036] The specification unit 342 is an example of the specification unit 12 described above. The specification unit 342 specifies, from the module registration information 313, notations of one or more processing purpose candidates associated with the selected environment construction tool. Alternatively, the specification unit 342 may specify, from the module registration information 313, one or more code strings corresponding to the selected environment construction tool as notations regarding the processing purpose candidates. Thereby, the creator can create the IaC code while imaging the coding. Also, the specification unit 342 specifies a first set corresponding to the selected notation from the module registration information 313. Specifically, the specification unit 342 specifies the main module, options, and connection strings associated with the processing purpose selected from among the processing purpose selection fields. Alternatively, the specification unit 342 may specify the options and connection strings associated with the main module selected from among the processing purpose selection fields. Further, the specification unit 342 specifies a second set corresponding to the selected version in the predetermined environment construction tool from the support option registration information 314.

[0037] The generation unit 343 is an example of the above-described generation unit 13. In response to an IaC code creation request from the management terminal 301, the generation unit 343 generates an IaC code creation screen for initial display. The IaC code creation screen for initial display includes at least an environment construction tool selection column and a version selection column. Further, the generation unit 343 generates a template code for execution using the code strings and accompanying strings included in the specified first set with the selected environment construction tool. Furthermore, the generation unit 343 generates a template code by removing the accompanying strings from the code strings included in the specified second set. Thereby, option strings not supported in a specific version can be excluded from the template code. Therefore, even if the user is not familiar with the support status of the options of each version of various environment construction tools, the user can easily describe the necessary options. Also, the generation unit 343 generates a template code so as to satisfy the description rules in a predetermined environment construction tool. Thereby, the user can easily satisfy the description requirements operable with a predetermined environment construction tool without checking the coding rules of various environment construction tools, the target information system, and the utilization project each time.

[0038] The display unit 344 is an example of the above-described display unit 14. In response to an IaC code creation request from the management terminal 301, the display unit 344 transmits the generated IaC code creation screen to the management terminal 301 and causes the management terminal 301 to display the IaC code creation screen. Also, the display unit 344 makes the notation regarding the candidates for the specified processing purpose selectable and displays it in the processing purpose selection column in the IaC code creation screen. Also, the display unit 344 displays the generated template code in the code display column in the IaC code creation screen. At this time, the display unit 344 may display the template code in the code display column so that it can be edited. Also, when the display unit 344 receives a selection of notation, it adds and displays the notation in the processing flow display column in the IaC code creation screen.

[0039] The output unit 345 outputs the content displayed in the code display column to the requester in response to an output request from a predetermined requester. For example, the output unit 345 causes the management terminal 301 to download the template code being edited displayed in the code display column.

[0040] FIG. 8 is a flowchart showing the flow of the IaC code creation support process according to the second embodiment. In the following description, FIGS. 9 and 10 will be referred to as appropriate.

[0041] First, the management terminal 301 transmits an IaC code creation request to the environment construction support device 300 in response to an operation by the person in charge of creating the IaC code. In response to this, the generation unit 343 of the environment construction support device 300 generates an IaC code creation screen for initial display. Then, the display unit 344 transmits the generated IaC code creation screen to the management terminal 301 and causes the management terminal 301 to display the IaC code creation screen (S21).

[0042] FIG. 9 is a diagram showing an example of the IaC code creation support screen 4 according to the second embodiment. The IaC code creation support screen 4 includes an environment construction tool selection column 41, a version selection column 42, a processing purpose selection column 43, a processing flow display column 44, an IaC code display column 45, and a download button 46.

[0043] Note that at the time of step S21, that is, at the initial display stage, the IaC code creation support screen 4 only needs to display at least the environment construction tool selection column 41 and the version selection column 42. At this time, the display contents of the environment construction tool selection column 41 and the version selection column 42, etc. may be empty (not selected), or default values may be displayed. Also, at this time, the display content of the processing purpose selection column 43 may be empty or may be the display content according to the default value of the environment construction tool selection column 41. Also, at this time, in the processing flow display column 44, processes 441 and 442 are not displayed, and the display content of the IaC code display column 45 is assumed to be empty.

[0044] The environment construction tool selection column 41 is a column that enables the selection of the name of the environment construction tool in the tool list 312 via a pull-down menu. The version selection column 42 is a column that enables the selection of the version number supported by the environment construction tool selected in the environment construction tool selection column 41. That is, the list of version numbers that can be selected in the version selection column 42 is dynamically changed according to the type of the environment construction tool selected in the environment construction tool selection column 41.

[0045] The processing purpose selection column 43 is a column that displays notations regarding one or more processing purpose candidates corresponding to the environment construction tool (code type) selected in the environment construction tool selection column 41 and accepts a selection operation. The processing flow display column 44 is a column that displays the notation selected in the processing purpose selection column 43 within the processing flow. The IaC code display column 45 is a column that displays a template code corresponding to the notation selected in the processing purpose selection column 43 and the version selected in the version selection column 42. Note that the IaC code display column 45 may allow the code to be editable. The download button 46 is a button that, when pressed, executes a process to download the content displayed in the IaC code display column 45.

[0046] Next, the management terminal 301 accepts the selection of the tool type and version information according to the operation of the creator (S22). For example, the creator selects "Tool1" from the environment construction tool selection column 41 and selects "2.11.2" from the version selection column 42 via the management terminal 301. In response, the management terminal 301 transmits the selection content of the environment construction tool selection column 41 as the tool type and the selection content of the version selection column 42 as the version information to the environment construction support device 300. Then, the reception unit 341 accepts the selection of the tool type and version information from the management terminal 301.

[0047] Then, the specifying unit 342 specifies candidates for processing purposes (S23). Specifically, the specifying unit 342 refers to the tool list 312 to specify the code type corresponding to the selected tool type. Then, the specifying unit 342 specifies the notations of processing purposes associated with the specified code type from the module registration information 313. For example, in the case of the environment construction tool (tool type) "Tool1", the specifying unit 342 specifies the code type "PGlang1" and specifies "file copy" and "file operation" as candidates for processing purposes.

[0048] Then, the display unit 344 specific makes the notations regarding the presented candidates for processing purposes selectable and displays them in the processing purpose selection column 43 within the IaC code creation support screen 4 (S24). In the example of FIG. 9, it shows that "file copy" is displayed as the processing purpose notation 431 and "file operation" is displayed as the processing purpose notation 432 in the processing purpose selection column 43.

[0049] Thereafter, the management terminal 301 receives a selection operation of a processing purpose for the processing purpose selection column 43 from the person in charge of creation. For example, the management terminal 301 receives a selection operation op1 of the processing purpose notation 431 by the person in charge of creation. The selection operation op1 may be, for example, a drag-and-drop to the processing flow display column 44. In response to this, the management terminal 301 transmits to the environment construction support device 300 that the processing purpose notation 431 has been selected and that it has been drag-and-dropped between "S" and "E" in the processing flow display column 44. Then, the reception unit 341 receives the selection of the processing purpose from the management terminal 301 (S25). Here, the reception unit 341 receives that "file copy" has been selected as the processing purpose and that it has been drag-and-dropped between "S" and "E" in the processing flow display column 44.

[0050] Accordingly, the specifying unit 342 specifies, from the module registration information 313, the main module, options, and connection string associated with the selected processing purpose (S26). For example, the specifying unit 342 specifies the main module "copy", options "src", "dest", "decrypt", and connection string "=" associated with the processing purpose "file copy". At the same time, the specifying unit 342 specifies, from the support option registration information 314, the main module, options (and attributes) corresponding to the selected tool type and version. For example, the specifying unit 342 specifies the main module "copy", option "decrypt", and attribute "only applicable" associated with the processing purpose "file copy" and version "2.10".

[0051] Then, the generation unit 343 generates a template code using the specified main module, options, and connection string (S27). Specifically, first, the specifying unit 342 specifies half-width spaces, colon characters, etc. according to the coding rules defined for the environment construction tool "Tool1" and code type "PGlang1". Then, the generation unit 343 determines that the option "decrypt" cannot be specified for the main module "copy" based on the version "2.11.2" selected in the version selection field 42, the version "2.10" specified from the support option registration information 314, and the attribute "only applicable". Therefore, the generation unit 343 generates a template code using the main module "copy", options "src", "dest", and connection string "=", and half-width spaces, colon characters, etc. according to the coding rules. That is, the generation unit 343 excludes the option "decrypt" that is not supported in the selected version and generates a template code.

[0052] After that, the display unit 344 displays the generated template code in the code display column on the screen (S28). Specifically, the display unit 344 transmits the template code to the management terminal 301. In response to this, the management terminal 301 displays it as the template code 451 in the IaC code display column 45 of the IaC code creation support screen 4. As indicated by the non-display reason 453, the option "decrypt" is not displayed in the template code 451. However, the non-display reason 453 itself is a description for explaining the effects of the present embodiment and may not be an example of the screen display.

[0053] Also, at this time, that is, in response to the selection operation op1, the generation unit 343 generates the notation of the process 441 "file copy", and the display unit 344 displays the notation of the process 441 in the process flow display column 44.

[0054] After that, the management terminal 301 continues to receive the selection operation op2 of the process purpose notation 432 by the person in charge of creation. Here, it is assumed that the selection operation op2 is a drag-and-drop to the area below the process 441 in the process flow display column 44.

[0055] Accordingly, steps S25 to S28 described above are executed. For example, the specifying unit 342 specifies the main module "file", options "path", "state", "owner", "group", "mode", and connection string "=" associated with the processing purpose "file operation". At the same time, the specifying unit 342 searches for a record associated with the processing purpose "file operation" and version "2.10" from the support option registration information 314, but since it does not exist in the example of FIG. 7, it cannot be specified. Then, the generating unit 343 uses the main module "file", options "path", "state", "owner", "group", "mode", and connection string "=", and half-width spaces, colon characters, etc. according to the coding rules to generate a template code. The display unit 344 transmits the generated template code to the management terminal 301. Accordingly, the management terminal 301 displays it as a template code 452 in the IaC code display column 45 of the IaC code creation support screen 4. Also, at this time, that is, in response to the selection operation op2, the generating unit 343 generates the notation of the process 442 "file operation", and the display unit 344 displays the notation of the process 442 below the process 441 in the process flow display column 44.

[0056] After that, for example, the management terminal 301 may update the display content in response to an editing operation on the code displayed in the IaC code display column 45 from the person in charge of creation. Also, when the management terminal 301 receives the pressing of the download button 46 from the person in charge of creation, it causes the management terminal 301 to download the template code being edited displayed in the IaC code display column 45. Alternatively, when the management terminal 301 receives the pressing of the download button 46, it may transmit the fact and the display content currently displayed in the IaC code display column 45 to the environment construction support device 300. In that case, the output unit 345 of the environment construction support device 300 transmits the received display content to the management terminal 301. Thereby, the management terminal 301 can internally save the IaC code being edited in the IaC code display column 45 as a text file. Then, the person in charge of creation can continue to edit the IaC code to create and complete the desired IaC code.

[0057] FIG. 10 is a diagram showing an example of the IaC code creation support screen 4b according to Embodiment 2. The IaC code creation support screen 4b is an example in which the selected environment construction tool is different from the IaC code creation support screen 4 described above. The IaC code creation support screen 4b includes an environment construction tool selection column 41b, a version selection column 42b, a processing purpose selection column 43, a processing flow display column 44, an IaC code display column 45, and a download button 46. In the environment construction tool selection column 41b, "Tool2" is selected as the environment construction tool (tool type), and the version selection column 42b indicates that "1.0" is selected from the versions supported by "Tool2".

[0058] The processing purpose selection column 43 shows that the processing purpose notations 431b "AWS construction" and 432b "Azure construction" are displayed as candidates for the processing purpose corresponding to the environment construction tool selected in the environment construction tool selection column 41b. And it is assumed that the management terminal 301 has received a selection operation op1b of the processing purpose notation 431b by the person in charge of creation. The selection operation op1b may be, for example, a drag-and-drop operation to the processing flow display column 44. In response to this, the notation of the process 441b "AWS construction" is displayed in the processing flow display column 44. Also, in response to the selection operation op1b, a template code 451b is displayed in the IaC code display column 45. The template code 451b is generated using the main module "aws", options "access_key", "secret_key", "region", and connection string "=" of the processing purpose "Azure construction", and the "provider" notation, "[]", etc. according to the coding rules of the environment construction tool "Tool2". Incidentally, in this example, in the support option registration information 314, the main module "aws", option "region" of the processing purpose "Azure construction" and code type "PGlang2" are registered with the attribute "only applicable" in version "1.0". Therefore, the generation unit 343 determines that the option "region" is supported when generating the template code 451b and includes it in the template code 451b.

[0059] Here, the problems to be solved by this embodiment will be described in detail. First, due to the version upgrade of the environment construction tool, the description and notation of the supported IaC code may be changed. For example, in the new version of the environment construction tool, the types of modules described in the IaC code and the support for options that can be specified in the modules may be lost. Also, the library used by the environment construction tool may be changed. Therefore, with the version upgrade of the environment construction tool or the like, the existing IaC code may become unable to be executed by the environment construction tool, and thus the IaC code may need to be corrected each time.

[0060] Also, even for the same environment construction tool, different versions may be used, and the notation recommended in the IaC code may differ depending on the version. Also, the IaC code may be created through cooperation among multiple people, that is, the same file may be edited by multiple people. Also, the coding rules of the IaC code may differ depending on the system to be constructed or the development project. Furthermore, the way of describing the IaC code may depend on a person and may not be unified. For these reasons, the creation cost and maintenance cost of the IaC code may become extremely high.

[0061] According to this embodiment, it is possible to efficiently support the creation of IaC code according to the environment construction tool and version. Therefore, even if the creator of the IaC code is not familiar with the description rules of the IaC code for each environment construction tool and each version, the IaC code corresponding to the environment construction tool and version can be easily coded.

[0062] In particular, register in the support option registration information 314 the definition of the options supported in a specific version of a specific environment construction tool. When generating the template code, by determining whether an option is supported or not, unsupported options can be excluded from the template code. The registrant of the support option registration information 314 should be a person with knowledge of the specific environment construction tool and relatively high skills. In this way, other creators can easily create IaC codes with supported descriptions without being familiar with the detailed support content for each version in the specific environment construction tool.

[0063] Also, for a specific environment construction tool, code type, usage project, target information system, etc., there may be coding rules defined, not just unique formats, syntax, or syntax errors. By associating coding rules, etc. with the environment construction tools and code types in the tool list 312, creators can also easily create IaC codes that meet the coding rules, etc. without being familiar with the coding rules, etc. for each environment construction tool.

[0064] Also, in this embodiment, multiple types of environment construction tools and versions are managed. Therefore, it is possible to selectively use multiple types of IaC codes that depend on the environment in the information system to be constructed.

[0065] Also, in this embodiment, the flow of the processing purpose is automatically generated in the processing flow display column. As a result, the creator can code the IaC code while checking the processing content. Furthermore, control structures such as conditional judgment, conditional branching, and repetition may be added to the processing flow display column. In that case, the definition of the description of the control structures supported by the environment construction tool may be registered in the module registration information 313. In this case, the processing purpose may be conditional judgment, conditional branching, repetition, etc.

[0066] <Other Embodiments> In the above example, when the program is loaded into a computer, it includes a set of instructions (or software code) for causing the computer to perform one or more functions described in the embodiments. The program may be stored in a non-transitory computer-readable medium or a tangible storage medium. By way of example and not limitation, the computer-readable medium or tangible storage medium includes random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD), or other memory technologies, CD-ROM, digital versatile disc (DVD), Blu-ray (registered trademark) disc, or other optical disc storage, magnetic cassette, magnetic tape, magnetic disk storage, or other magnetic storage devices. The program may be transmitted on a transitory computer-readable medium or a communication medium. By way of example and not limitation, the transitory computer-readable medium or communication medium includes electrical, optical, acoustic, or other forms of propagated signals.

[0067] Note that the present disclosure is not limited to the above embodiments, and can be appropriately modified without departing from the spirit. Also, the present disclosure may be implemented by appropriately combining the respective embodiments.

[0068] Some or all of the above embodiments may be described as follows, but are not limited thereto. (Appendix A1) Receiving means for receiving a selection of a notation regarding a processing purpose in a predetermined environment construction tool in an information system; Specifying means for specifying a first set corresponding to the selected notation from among first registration information in which a set of a character string for code that can be described for execution by the environment construction tool and an accompanying character string that can be described in association with the character string for code is registered for each of the processing purposes in the environment construction tool; Generating means for generating a template code for execution by the selected environment construction tool using the character string for code and the accompanying character string included in the specified first set; Display means for displaying the generated template code in the code display column on the screen; An environment construction support device comprising the same. (Appendix A2) The reception means further receives a selection of a version in the predetermined environment construction tool; The specifying means specifies a second set corresponding to the selected version in the predetermined environment construction tool from among second registration information in which a set of the code string and the accompanying string supported by a specific version in the environment construction tool is registered; The generation means generates the template code by removing the accompanying string from the code string included in the specified second set; The environment construction support device according to Appendix A1. (Appendix A3) The generation means generates the template code so as to satisfy the description rules in the predetermined environment construction tool; The environment construction support device according to Appendix A1 or A2. (Appendix A4) The first registration information has registered a set of the code string and the accompanying string that can be described for execution in each of a plurality of environment construction tools for each processing purpose; The reception means receives a selection of one of the plurality of environment construction tools as the predetermined environment construction tool; The specifying means specifies candidates for processing purposes in the selected environment construction tool; The display means displays, on the processing purpose selection column on the screen, the notations related to the specified candidates for processing purposes in a selectable manner; The reception means receives a selection of the notation from among the processing purpose selection columns; The environment construction support device according to any one of Appendices A1 to A3. (Appendix A5) The specifying means specifies, from among the first registration information, one or more of the code strings corresponding to the selected environment construction tool as notations related to the candidates for processing purposes; The environment construction support device described in Supplementary Note A4. (Supplementary Note A6) When the display means receives the selection of the notation, it adds and displays the notation in the processing flow display column of the screen. The environment construction support device described in Supplementary Note A4 or A5. (Supplementary Note A7) It further includes an output means for outputting the content displayed in the code display column to the requester in response to an output request. The environment construction support device described in any one of Supplementary Notes A1 to A6. (Supplementary Note A8) The display means displays the template code in the code display column so that it can be edited. The environment construction support device described in any one of Supplementary Notes A1 to A7. (Supplementary Note A9) The associated character string includes an option character string and a connection character string that can be specified by the character string for the corresponding code. The environment construction support device described in any one of Supplementary Notes A1 to A8. (Supplementary Note B1) A storage device that stores first registration information in which a set of a character string for a code that can be described to be executed by the environment construction tool and an associated character string that can be described in association with the character string for the code is registered for each processing purpose in a predetermined environment construction tool in an information system, An environment construction support device connected to the storage device, The environment construction support device, A reception means for receiving the selection of a notation related to the processing purpose in the predetermined environment construction tool, A specifying means for specifying a first set corresponding to the selected notation from the first registration information, A generation means for generating a template code for execution by the selected environment construction tool using the character string for the code and the associated character string included in the specified first set, A display means for displaying the generated template code in the code display column of the screen, An environment construction support system comprising the above. (Supplementary Note B2) The memory device further stores second registration information in which a set of the character string for the code and the accompanying character string supported by a specific version in the environment construction tool is registered. The reception means further receives a selection of a version in the predetermined environment construction tool. The specifying means specifies a second set corresponding to the selected version in the predetermined environment construction tool from among the second registration information. The generation means generates the template code by removing the accompanying character string from the character string for the code included in the specified second set. The environment construction support system according to Supplementary Note B1. (Supplementary Note C1) A computer receives a selection of a notation regarding a processing purpose in a predetermined environment construction tool in an information system, for each of the processing purposes in the environment construction tool, from among first registration information in which a set of a character string for a code that can be described for execution by the environment construction tool and an accompanying character string that can be described in association with the character string for the code is registered, specifies a first set corresponding to the selected notation, generates a template code for execution by the selected environment construction tool using the character string for the code and the accompanying character string included in the specified first set, and displays the generated template code in a code display field on a screen. An environment construction support method. (Supplementary Note D1) a reception process of receiving a selection of a notation regarding a processing purpose in a predetermined environment construction tool in an information system, for each of the processing purposes in the environment construction tool, a specifying process of specifying a first set corresponding to the selected notation from among first registration information in which a set of a character string for a code that can be described for execution by the environment construction tool and an accompanying character string that can be described in association with the character string for the code is registered, a generation process of generating a template code for execution by the selected environment construction tool using the character string for the code and the accompanying character string included in the specified first set A display process for displaying the generated template code in the code display column on the screen, A non-transitory computer-readable medium storing an environment construction support program that causes a computer to execute.

[0069] Although the present invention has been described with reference to the embodiments (and examples), the present invention is not limited to the above embodiments (and examples). Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

Explanation of Reference Numerals

[0070] 1 Environment construction support device 11 Reception unit 12 Identification unit 13 Generation unit 14 Display unit 1000 Environment construction support system N Network 100 Information system 200 Environment construction device 201 Environment construction tool 20n Environment construction tool 300 Environment construction support device 301 Management terminal 310 Storage unit 311 Environment construction support program 312 Tool list 313 Module registration information 314 Support option registration information 320 Memory 330 Communication unit 340 Control unit 341 Reception unit 342 Identification unit 343 Generation unit 344 Display unit 345 Output unit 4 IaC code creation support screen 41 Environment construction tool selection column 42 Version selection column 43 Processing purpose selection column 431 Processing purpose notation 432 Processing purpose notation 44 Processing flow display column 441 Process 442 Process 45 IaC code display column 451 Template code 452 Template code 453 Reason for non-display 46 Download button op1 Selection operation op2 Selection operation 4b IaC code creation support screen 41b Environment construction tool selection column 42b Version selection column 431b Processing purpose notation 432b Processing purpose notation 441b Process 451b Template code op1b Selection operation

Claims

1. Receiving means for receiving a selection of a notation regarding a processing purpose in a predetermined environment construction tool in an information system; For each of the processing purposes in the environment construction tool, from among first registration information in which a set of a code string that can be described for execution by the environment construction tool and an accompanying string that can be described in association with the code string is registered, specifying means for specifying a first set corresponding to the selected notation; Generating means for generating a template code for execution by the selected environment construction tool using the code string and the accompanying string included in the specified first set; Display means for displaying the generated template code in a code display field on the screen; An environment construction support device comprising the above.

2. The receiving means further receives a selection of a version in the predetermined environment construction tool, The specifying means specifies a second set corresponding to the selected version in the predetermined environment construction tool from among second registration information in which a set of the code string and the accompanying string supported by a specific version in the environment construction tool is registered, The generating means generates the template code by removing the accompanying string from the code string included in the specified second set. The environment construction support device according to claim 1.

3. The generating means generates the template code so as to satisfy a description rule in the predetermined environment construction tool. The environment construction support device according to claim 1 or 2.

4. In the first registration information, for each of the processing purposes in each of a plurality of environment construction tools, a set of the code string that can be described for execution by each environment construction tool and the accompanying string is registered, The receiving means receives, as a selection of the predetermined environment construction tool, one of the plurality of environment construction tools, The specifying means specifies candidates for processing purposes in the selected environment construction tool, The display means displays the notation regarding the specified candidates for processing purposes in a processing purpose selection field on the screen so as to be selectable, The receiving means receives a selection of the notation from among the processing purpose selection fields. The environment construction support device according to any one of claims 1 to 3.

5. The specific means specifies, from among the first registration information, one or more of the code strings corresponding to the selected environment construction tool as notations regarding candidates for the processing purpose. The environment construction support apparatus according to claim 4.

6. When the display means receives a selection of the notation, the display means adds and displays the notation in the processing flow display column of the screen. The environment construction support apparatus according to claim 4 or 5.

7. The apparatus further includes an output means for outputting the content displayed in the code display column to the requester in response to an output request. The environment construction support apparatus according to any one of claims 1 to 6.

8. A storage device that stores first registration information in which, for each processing purpose in a predetermined environment construction tool in an information system, a set of a code string that can be described for execution by the environment construction tool and an accompanying string that can be described in association with the code string is registered; An environment construction support apparatus connected to the storage device; The environment construction support apparatus includes: A reception means for receiving a selection of a notation regarding the processing purpose in the predetermined environment construction tool; A specific means for specifying a first set corresponding to the selected notation from among the first registration information; A generation means for generating a template code for execution by the selected environment construction tool using the code string and the accompanying string included in the specified first set; A display means for displaying the generated template code in a code display column on a screen; An environment construction support system comprising the above.

9. A computer: Receives a selection of a notation regarding a processing purpose in a predetermined environment construction tool in an information system; For each processing purpose in the environment construction tool, specifies a first set corresponding to the selected notation from among first registration information in which a set of a code string that can be described for execution by the environment construction tool and an accompanying string that can be described in association with the code string is registered; Generates a template code for execution by the selected environment construction tool using the code string and the accompanying string included in the specified first set; Displays the generated template code in a code display column on a screen. An environment construction support method.

10. A reception process for receiving a selection of a notation regarding a processing purpose in a predetermined environment construction tool in an information system; For each of the processing purposes in the environment construction tool, a specific process of identifying a first set corresponding to the selected notation from among first registration information in which a set of a code string that can be described for execution by the environment construction tool and an accompanying string that can be described in association with the code string is registered, a generation process of generating a template code for execution by the selected environment construction tool using the code string and the accompanying string included in the identified first set, a display process of displaying the generated template code in a code display column on the screen, An environment construction support program that causes a computer to execute.

Citation Information

Patent Citations

  • Environment construction support system and environment construction support method

    JP2020017053A

  • System construction parameter management device, system construction parameter management system, system construction parameter management method, and system construction parameter management program

    JP2020061019A

  • Packaging support system and packaging support method

    JP2021039393A