add instructions to manual build and test commands

This commit is contained in:
Niilo Ursin 2017-09-05 09:38:27 +03:00
parent f1e377eed1
commit 0ad4f70469

View file

@ -1,12 +1,48 @@
Build status: Build status:
- ![Build Status](https://travis-ci.org/osterzel/clamav-rest.svg) - ![Build Status](https://travis-ci.org/niilo/clamav-rest.svg)
- ![Container_status](https://quay.io/repository/osterzel/clamav-rest/status) - ![Container_status](https://quay.io/repository/niilo/clamav-rest/status)
This repository contains a basic rest api for clamav which allows sites to scan files as they are uploaded This repository contains a basic rest api for clamav which allows sites to scan files as they are uploaded
!! Project needs cleenup, Makefile and documentation oesn't match current status !!
Usage: Usage:
make build-container - this will build the docker container and link it up to a clamav container build golang binary and docker image:
it exposes a rest api on port 9000 ```bash
env GOOS=linux GOARCH=amd64 go build
docker build . -t niilo/clamav-rest
docker run -p 9000:9000 --rm -it niilo/clamav-rest
```
make test - this will test against the rest api Run clamav-rest docker image:
```bash
docker run -p 9000:9000 --rm -it niilo/clamav-rest
```
Test that service detects common test virus signature:
```bash
$ curl -i -F "file=@eicar.com.txt" http://localhost:9000/scan
HTTP/1.1 100 Continue
HTTP/1.1 406 Not Acceptable
Content-Type: application/json; charset=utf-8
Date: Mon, 28 Aug 2017 20:22:34 GMT
Content-Length: 56
{ Status: "FOUND", Description: "Eicar-Test-Signature" }
```
Test that service returns 200 for clean file:
```bash
$ curl -i -F "file=@clamrest.go" http://localhost:9000/scan
HTTP/1.1 100 Continue
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Date: Mon, 28 Aug 2017 20:23:16 GMT
Content-Length: 33
{ Status: "OK", Description: "" }
```