« Porting Perl -> LOS178 | Main | complogs »

CVS Adm Web App Prototype

  • Added CVSCommit to CVSAdm.pm and changed it so that CVS commits are now happening when changes happen to the file
  • Finished up CVS Adm Web App Prototype

CVS Adm Web App Tutorial

To access this web app go to http://saturn.lynx.com and select CVS Adm from the menu on the left.

Notice that there are several servers in the drop down list (controlled by a cvsadm.conf file). Select penguin and click on Select. Note you could select other servers and see other repositories but any attempts to modify files will result in CVS commit failures. We have not set up CVS access for these other repositories yet.

The next screen will show you the repositories available for that server. Penguin has only one - andrew-cvs - which is a test cvs repository. Click on Select.

At this point you're at the Login screen for this server, this repository. For now let's be cvsroot and test some of it's capabilities. The cvsroot user password for this test repository is "cvsroot123". Enter cvsroot user and cvsroot123 for the password and click Login.

You are now at the Edit User screen. Since you are cvsroot you will see an Admin button. Also as an admin you are presented with a drop down for System User that allows you to modify the system user for a CVS user. Admins are also presented with only a New Password field. This is so that an admin can re/set the password for another user.

Fullname and Email are required fields. Many user entries do not have these fields filled in yet but will be required to enter them when/if they edit their entry. Additionally we've added the concept of groups which are listed below Email.

Next the repository and read/write access is listed. Finally you have a Submit and a Logout button.

To edit another user or perform any of the other administrative task select the Admin button. You are now at the Maintenance Menu. This screen presents users, groups and sysusers as drop downs and corresponding Edit/Delete/Create buttons. Let's add a new user - testuser. Select Create User. The Add New User screen is presented. Here you can create a new Username (testuser), assign him to a System User, Password, Fullname, Email as well as assign him to specific groups and set the read/write access to this repository for the user. Then Select Add User.

After adding testuser click OK and you will be back at the Add New User screen. If you are done adding users select Admin to return to the Maintenance Menu. Notice that testuser is now in the users drop down menu. Select testuser and then select Edit User to edit testuser's fields.

Return to the Maintenance Menu and select testuser in the users drop down menu then Delete User to delete this user.

Try creating a new group men and another new group women. Use Edit User to edit pre-existing users. Notice the new groups of men and women are now listed (but unchecked). Find some men and assign them to be in the men group then click on the Submit button to update their records. Similarly find some women and mark them as such.

Now return to the Maintenance Menu and select the men group and delete it. CVSAdm will not only remove the men group but it will clear off the group men from the individual entries in the passwd file.

Now select the women group and then Edit Group and change women -> wonderwomen. CVSAdm will update the groups file as well as the passwd file changing women -> wonderwomen.

Try adding a system user of say superuser. It now becomes available under the System User drop down.

Edit a user who's password you do not know as cvsroot to a known password. Now Logout and login as that user using the newly assigned password. Unless you had assign this user to the special group cvsadm you will notice that you are not able to change groups or read/write access to the repository as a normal user.

The group cvsadm is a special group. It's used to allow another user to be cvsroot-like. Users in the cvsadm group for the server/repository are able to edit/delete/create other users on the Maintenance Menu. They are not allowed to edit/delete/create groups or system users but they are allows to assign other users to groups and/or system users. Only cvsroot can edit/delete/create groups and system users.

The group cvsadm and the system user cvsroot are protected from being deleted.