Showing posts with label procedure. Show all posts
Showing posts with label procedure. Show all posts

Monday, May 28, 2012

How to find objects present more than twice on the project tree (Synergy tip work)

There is a bug in Synergy 7.1* running on Linux server (PM29256, http://www-304.ibm.com/support/docview.wss?uid=swg1PM29256).
If the same object is present twice in different directories the Sync fails with the  “Warning: Error in Executing SVM request” or crashes altogether.
According to IBM it has been fixed in 7.2.

In the meanwhile the workaround is to replace the object with the soft link to it in all the occasions but the one. This will work for the projects being developed in Linux environment.

To find out the “duplicated” objects:

1.      ccm query "is_member_of(‘4 part project identifier’)" -u -f %objectname > project_members.list
2.      for obj in `cat project_members.list `;do echo $obj >> duplicates; ccm query "has_child('$obj','projectname#version')" >> dupl_dirs;done
3.      grep -B2 ^2\) dupl_dirs

Where the project details are needed use the project in questionJ.


This will yield the list of the objects that appear on the tree twice. E.g.

myfile.h#ver2:incl:1
1) base #ver12 integrate david dir YYY 2  85654
2) http#ver32  integrate david dir YYY 17 21471
--
abc#ver4:script:1
1) foo#ver.3 released abby dir YYY 1  29349
2) bar#ver.2 released abby dir YYY 31 22563

End of story.

Sunday, May 20, 2012

How to set up the security read restrictions to all the members of specific project that belong to original component but not to other known components

  •  ccm set role group_mgr
  • ccm query -i group (this bring us the grop name)
  •  ccm query "is_member_of('PROJNAME#<proj ver>') and type !='dir' and is_associated_object_of(cvtype='task' and release match '*') and not is_associated_object_of(cvtype='task' and release match 'COMP1*' or release match 'COMP2*' or release match 'COMP3*')" -u -f "%objectname %task_release %task" > compname_only.list
  • ccm groups -a -v :readsource @ (this actually adds the group attribute with a read restriction)
  • ccm set rile developer



E

Synergy conflilcts: "parallel, not included"

Conflicts report a lot of files, all belong to a single task, the task
is for release that is not in process rules (reconfigure properties).

Here is how to find:

1. List all the objects of the offending task (35742):
> ccm task -show objects  35742  -u -f %objectname >  35742 .obj

2. Query for all the immediate successors of the task objects:
> for obj in `cat  35742 .obj`;do ccm query "has_predecessor('$obj')" -f
"%objectname %task_release" >> successors;done

3. Grep the list for objects of your current release:
> grep 27.0.3.20 successors

2) trroute.c#KUKU_27.0.3.20.1:csrc:3 KUKU_27.0.3.20

End of story.

Tuesday, May 24, 2011

Synergy groups: setting up read-only access to sources of specific project that come from specific releases only

Assume a role of group_mgr:

$ ccm set role group_mgr

Note: if you do not have a group_mgr role assume the role of ccm_admin and add yourself the group_mgr role. End the session and start over.

Verify:

$ ccm set role

group_mgr

Create group:

$ ccm groups -c mygroup

This will open the vi (or any other text editor you have set as a default) session where you should write all the names of the users to be members of the group, in a single line, space-delimited.

Once you are done adding the users save the file and close editor session. The group will be created.

Do not bother sorting the names, next time you look at it via ccm groups -show mygroup you will see all the names sorted alphabetically. And they will be cut in several lines anyway.

List groups:

$ ccm query -i group

1) group/admin/mygroup/1 admin myuser admin <void> group <void>

List group attribute: (so we know what can be viewed or changed):

$ ccm attr -l @1

create_time (time) (local)

cvtype (string) (local)

is_asm (boolean) (local)

is_model (boolean) (local)

membership (text) (local)

modify_time (time) (local)

name (string) (local)

owner (string) (local)

status (string) (local)

subsystem (string) (local)

version (string) (local)

View group owner:

$ ccm attr -s owner @1

myuser

View group members:

$ ccm attr -s membership @1

OR

$ ccm groups -show mygroup

Change group membership:

$ ccm groups -e <group name>

e.g. ccm groups –e mygroup

Query for all the objects to assign to the group (all objects in the ABC_v721_00 project that belong to the ABC* releases):

$ ccm query "is_member_of('ABCAPP#V721_00') and is_associated_object_of(cvtype='task' and release match 'ABC*') and type !='dir'"

Assign ABCAPP#V721_00 721-only objects to the dp security group with read-deny access to others:

$ ccm groups -a -v mygroup:readsource @

Wednesday, December 3, 2008

Synergy 6.5 License server installation

Here is the step by step instructions on setting up the Synergy license server (11.5).
Based on Telelogic Lifecycle Solutions Licensing Guide.
As root:
- Create user flexnet.
[root@licserv ~]# adduser flexnet
[root@licserv ~]# passwd flexnet
As flexnet:
- Copy licence archive to Linux machine.
- [root@licserv ~]# mkdir -p /opt/flexnet/linux
- [root@licserv ~]# chown -R flexnet:flexnet /opt/flexnet/linux
- Unpack the flex.tar file from …/license_server/linux to the newly created installation directory /opt/flexnet/linux:
[flexnet@licserv linux]$ tar -xvf /home/flexnet/linux/flex.tar
You should get :
[flexnet@licserv linux]$ pwd
/opt/flexnet/linux
[flexnet@
licserv linux]$ ll
total 3240
-rwxr-xr-x 1 flexnet flexnet 1021668 Apr 12 2008 lmgrd
-rwxr-xr-x 1 flexnet flexnet 1011900 Nov 27 2007 lmutil
-rwxr-xr-x 1 flexnet flexnet 1263712 Sep 5 10:44 telelogic

- Save or copy the FLEXnet license file you received from Telelogic into a text file called license.dat:

[flexnet@licserv flexnet]$ cp -pr license.dat.txt_validtilldec08end /opt/flexnet/license.dat

- Find out your FlexLM hostid:
[flexnet@licserv flexnet]$ /opt/flexnet/linux/lmutil lmhostid
lmutil - Copyright (c) 1989-2007 Macrovision Europe Ltd. and/or Macrovision Corporation. All Rights Reserved.
The FLEXnet host ID of this machine is "001b786ed876"

- Add the following line at the very begining of the licence.dat file:

SERVER licserv 001b786ed876 19353

where licserv is the machine where license server will be running, 001b786ed876 is the hostid you discovered in the previous step, 19353 is the port to be used by the license server.

- Set up the license file location to the LM_LICENSE_FILE variable:

[flexnet@licserv flexnet]$ export LM_LICENSE_FILE=/opt/flexnet/license.dat

- Add the LM_LICENSE_FILE set to the flexnet ini file (.bashrc):

export LM_LICENSE_FILE=/opt/flexnet/license.dat

- You may also want to create a link
/usr/local/flexlm/licenses/license.dat -> /opt/flexnet/license.dat
'cause flexlm is looking for the license.dat by default in the /usr/loca/flexlm/license.
- Change directory to the installation path:
[flexnet@licserv flexnet]$ cd /opt/flexnet/linux
- Start the license server:
[flexnet@licserv flexnet]$ /opt/flexnet/linux/lmgrd -local -c license.dat -l license.log
- Make sure it is running:
[flexnet@licserv flexnet]$ /opt/flexnet/linux/lmutil lmstat -c license.dat
You should get the following:
[flexnet@licserv ~]$ /opt/flexnet/linux/lmutil lmstat -c license.dat
lmutil - Copyright (c) 1989-2007 Macrovision Europe Ltd. and/or Macrovision Corporation. All Rights Reserved.
Flexible License Manager status on Sun 11/30/2008 09:25
License server status: 19353@licserv
License file(s) on
licserv: /opt/flexnet/license.dat:
licserv: license server UP (MASTER) v11.5
Vendor daemon status (on licserv):
telelogic: UP v11.5
This completes the Synergy license server installation.
Make sure you refer to this license server by inspecting the following file on you: Synergy engine installations:
/usr/local/ccm/etc/license_data.txt
It should have the following content:
$ cat /usr/local/ccm/etc/license_data.txt
19353@
licserv

Make sure to add the server start command to the machine boot procedure.
Remember, the license daemon has to run with the flexnet user, not as ccm_root or root.