[INSTRM-283] Move ics bootstrap scripts from configuration repository (ics_config) Created: 24/Jan/18  Updated: 25/Jan/18  Resolved: 24/Jan/18

Status: Open
Project: Instrument control development
Component/s: ics_config
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Normal
Reporter: shimono Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Blocks
is blocked by INSTRM-176 Add bootstrap for eups without ansible Won't Fix
Relates
relates to INSTRM-285 Change ICS_ROOT from fixed string to ... Open
Reviewers: cloomis

 Description   

For now, we have bootstrap and installation scripts for eups/tron/actors in ics_config repository, which is defined to store all actor configurations but not any scripts without any relation to actor configurations.
Not to make users confused, nor not to make repositories/files messy, it is better to move these installation scripts from ics_config repository to something other repository.

Installation and configuration of the production is supposed to be performed using ansible with roles/tasks in ics_ansible repository, so it is possible to have misc scripts or supports scripts in there like this kind of bootstrap and helper scripts to be used during development and AIT.
So, I'd propose to move ics_config/bin/* into ics_ansible/misc (some part is in INSTRM #176), with making them refactored to match with current situations and also python3 (INSTRM #280).



 Comments   
Comment by cloomis [ 25/Jan/18 ]

I agree that we should probably not have the essential bootstrap and installation scripts be in the same product as the configurations.

We have two scripts, as it stands: bootstrap_mhs and pfsinstall. bootstrap_mhs has been pared down to only install eups and ics_config, and (for now) all other packages are installed with pfsinstall.

You can put those anywhere, with a couple of of caveats:

  • pfsinstall (and any others we add) must be in a bin/ directory on the PATH
  • the product which pfsinstall is in should not depend on any other products. Otherwise you have to update the pfsinstall product when the dependent product(s) are updated.

Since ics_ansible is a product composed of configuration data, just like ics_config, I do not think that is any better than ics_config.

Also, as it stands ics_config is a slightly special product, since installing it defines the absolute base root paths for all of the MHS in the ics_config.table file: all other products must depend on ics_config because of that. If you move all scripts out of ics_config you will need to make that product depend on ics_config.

I guess I don't see much benefit in moving the scripts.

Generated at Sat Feb 10 16:23:23 JST 2024 using Jira 8.3.4#803005-sha1:1f96e09b3c60279a408a2ae47be3c745f571388b.