SVN - collection of several projects in one basic version

I am really new to subversion and version control concepts, and although I can handle checking multiple files in a project, I need recommendations on how to scale it for my needs.

In fact, we are developing an environment that contains many scenarios and configurations that are distributed across many virtual and physical machines. Create scripts, configuration files, binaries, RPM mirrors, etc., And while everyone in their own world is fine, we need to somehow combine them into one version. While in a larger coding project, I see that this, apparently, will just process folders in one SVN project (as I understand it, therefore, probably not ...), these thigns really have nothing to do. and many don’t even have code, and will simply be in SVN as the owner of the place that I imagine. Thus, it makes no sense to "check" the collected mass of data, but somehow you need to associate the top-level version number with 60 different jobs. As above, these are code, configuration files, rpm, etc.

I initially assume that we will use SVN for this somehow, but perhaps this is a wrong assumption in the first case. However, from my general understanding of the requirements that I can imagine, there are real projects in SVN, and then wrapper projects that are updated on a cronjob (or other trigger) to reference the latest SVN versions of each project listed in the metadata file inside a wrapper project. If any project in the list has been changed, then this shell project is updated with a new metadata file that is checked on it. In turn, these wrappers are wrapped in other wrappers up to one master project. The final use of this version of the main project is to create a baseline of projects under it that can be used with documentation systems and change tracking with a level of automation.

While I can envision what I just described, it is based only on a very small representation of SVN and probably (hopefully) there is a lot of sense of SVN (or git .... ??) of existence.

I hope this makes sense, sorry if that is not the case. More than happy to try to clarify something.

thanks

Chris

EDIT: To give an example of individual things, we must cover:

  • A specific version of CentOS rpm repositories, based on the time it was synchronized with the website
  • Nagios configuration files that will be installed in vm after installing Nagios packages.
  • Kickstart scripts used to create virtual servers
  • Scenarios Used to Launch System Deployment
  • Iptables rule sets apply to each type of virtual machine

I'm not interested in how this is done in the least, and how we present the idea of ​​which version of each of these things is required during deployment.

[EDIT] Well, it all comes down to the fact that I don’t understand how to manage SVN versions. Since the revision number is the repository, all projects are implicitly covered ... no real work is needed to achieve what I wanted. Thank you, and it is not surprising that I did not make any sense to anyone else.

+4
source share
2 answers

What do you want SVN Appearance

+1
source

I'm not sure I understand this question, but you can store many different things in different SVN directories. Then you can use a sparse directory to retrieve only parts of the repository.

Thus, you can save the configuration of each machine separately if you choose, and only verify that the machine directory is on a specific machine.

What you cannot do in SVN has the same file that is presented in two different places. Thus, you cannot store abc.config in a top-level directory and then have a representation of this exact file in two different directory trees. You can do this using external resources.

0
source

All Articles