Skip to content

Commit

Permalink
add contributing and deploying and update readme
Browse files Browse the repository at this point in the history
  • Loading branch information
William Welling committed Aug 10, 2022
1 parent 9ea26a0 commit fc8b953
Show file tree
Hide file tree
Showing 3 changed files with 151 additions and 13 deletions.
63 changes: 63 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
<a name="readme-top"></a>
# Contributing To ProjectManagementService

Though ProjectManagementService is developed and maintained by Texas A&M University Libraries, we welcome community contributions.
Involvement in ProjectManagementService can take many forms:

<div align="right">(<a href="#readme-top">back to top</a>)</div>

## Using

Deploying ProjectManagementService and trying it out at your own institution is itself a way of contributing to the development process.
For more information on deployment strategies please see the [Deployment Guide][deployment-guide].

[deployment-guide]: DEPLOYING.md

<div align="right">(<a href="#readme-top">back to top</a>)</div>

## Filing Issues

Once you are using ProjectManagementService the creation of new issues through GitHub is a major method of contribution towards ProjectManagementService development.
Issues can be motivated by the discovery of a bug in the software, or by the desire to see either new features added or see changes to existing features.

There are two primary types of issues:
1. Bug Report
2. Feature Request

A **Bug Report** involves a problem with the existing software or a **Feature** is not working as designed or expected.

A **Feature** involves new functionality or behavior.

<div align="right">(<a href="#readme-top">back to top</a>)</div>

## Creating a Pull Request

Community code and documentation contributions are welcome and should take the form of a **GitHub Pull Request** (*PR*).
Each *PR* will need to be reviewed by a ProjectManagementService developer.
A review will result in the *PR* being accepted and merged, a descriptive request for changes, or the *PR* being closed along with a detailed explanation.

It is our intention to maintain labeling on issues that are deemed to be low difficulty in order to provide a good point of entry for those looking to begin contributing code or documentation.

A *PR* description should include a list of the specific issues resolved, the predicted *semantic versioning* impact of the changes, and a description which characterizes the nature of the changes made.
When creating a *PR*, an issue template is automatically provided to simplify this process.

For more information about *semantic versioning* please see [Semantic Versioning Website][semantic-versioning].
In general keep in mind:

- A **Major Change** is a breaking change that is not backwards compatible.
- A **Minor Change** is a non-breaking change that is backwards compatible to the last **Major Change**.
- A **Patch** is a trivial change or bug fix that should not impact compatibility.

<div align="right">(<a href="#readme-top">back to top</a>)</div>

## Good Luck!

We look forward to seeing your contributions.
If you have any additional questions please contact the ProjectManagementService developers at [helpdesk@library.tamu.edu][helpdesk-email].

<div align="right">(<a href="#readme-top">back to top</a>)</div>

<!-- LINKS -->
[deployment-guide]: DEPLOYING.md
[semantic-versioning]: https://semver.org/
[helpdesk-email]: mailto:helpdesk@library.tamu.edu
53 changes: 53 additions & 0 deletions DEPLOYING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
<a name="readme-top"></a>
# Deployment Guide

## Production Deployments

For **production** deployments, deploy using `docker-compose` via the [MyLibrary App][app-repo].
This is the recommended method of deployment for production systems.
Go to the [MyLibrary App][app-repo] and following the deployment instructions there.

Performing the deployment using the [MyLibrary App][app-repo] should be something similar to the following:
```shell
docker-compose up
```

The **development** deployment can also use `docker-compose` in the same way.

<div align="right">(<a href="#readme-top">back to top</a>)</div>


## Development Deployment using **Docker**

To manually use `docker` rather than `docker-compose`, run the following:

```shell
docker image build -t service .
docker run -it service
```

```
docker build --help
# -t, --tag list Name and optionally a tag in the
```

```
docker run --help
# -i, --interactive Keep STDIN open even if not attached.
# -t, --tty Allocate a pseudo-TTY
```

<div align="right">(<a href="#readme-top">back to top</a>)</div>

## Development Deployment using **Maven**

Running locally is easiest using spring boot:

```shell
mvn spring-boot:run
```

<div align="right">(<a href="#readme-top">back to top</a>)</div>

<!-- LINKS -->
[app-repo]: https://github.com/TAMULib/MyLibrary
48 changes: 35 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,44 @@
[![Build Status](https://github.com/TAMULib/ProjectManagementService/workflows/Build/badge.svg)](https://github.com/TAMULib/ProjectManagementService/actions?query=workflow%3ABuild)
[![Coverage Status](https://coveralls.io/repos/github/TAMULib/ProjectManagementService/badge.svg)](https://coveralls.io/github/TAMULib/ProjectManagementService)
[![Build Status][build-badge]][build-status]
[![Coverage Status][coverage-badge]][coverage-status]

# Product Management Service
The Product Management Service is designed to connect our Library Webservice Status Application to our Version Management Software.

## Building Product Management Service
A service designed to connect our Library Service Status System to VersionOne and GitHub developed and maintained by [Texas A&M University Libraries][tamu-library].

### Development
```bash
$ mvn clean spring-boot:run
```
<details>
<summary>Table of contents</summary>

### Production
```bash
$ mvn clean package -DskipTests -Dproduction
```
- [Developer Documentation](#developer-documentation)
- [Additional Resources](#additional-resources)

</details>

## Developer Documentation

- [API Documentation](https://tamulib.github.io/ProjectManagementService)
- [Contributors Documentation][contribute-guide]
- [Deployment Documentation][deployment-guide]
- [API Documentation][api-documentation]

<div align="right">(<a href="#readme-top">back to top</a>)</div>

## Additional Resources

Please feel free to file any issues concerning Auth Service to the issues section of the repository.

Any questions concerning Auth Service can be directed to helpdesk@library.tamu.edu.

<div align="right">(<a href="#readme-top">back to top</a>)</div>

Copyright © 2022 Texas A&M University Libraries under the [The MIT License][license].

<!-- LINKS -->
[build-badge]: https://github.com/TAMULib/ProjectManagementService/workflows/Build/badge.svg
[build-status]: https://github.com/TAMULib/ProjectManagementService/actions?query=workflow%3ABuild
[coverage-badge]: https://coveralls.io/repos/github/TAMULib/ProjectManagementService/badge.svg
[coverage-status]: https://coveralls.io/github/TAMULib/ProjectManagementService

[api-documentation]: https://tamulib.github.io/ProjectManagementService
[tamu-library]: http://library.tamu.edu
[deployment-guide]: DEPLOYING.md
[contribute-guide]: CONTRIBUTING.md
[license]: LICENSE

0 comments on commit fc8b953

Please sign in to comment.