- Looking at our releases, https://github.com/Human-Connection/Human-Connection/releases, the ones created from our build server, are not sufficient.
As part of the deploy process, I have been manually creating the Releases in Github, using our CHANGELOG.md.... I propose we remove this script from our build server, as it's now breaking our master build and it's not being used.
Since `dotenv` in the backend now loads configuration from a file
relative to the current file, we don't have to duplicate the neo4j
configuration settings here.
Ok, so here is the plan. Let's give both our cucumber features and your
cypress tests a prominent place to live. That would be the root level
folder of our application. Second, let's revive formerly dead code step
by step.
Ie. move code from the former location `backend/features/` to `features/`
when it is ready. All edge cases should be tested with unit tests in
`backend/`, see my `webfinger.spec.js` as an example.
- Remove package-lock.json because we are using yarn
- Remove every instance of graphql-requests as the backend doesnt use it anymore
- Remove graphql-request dependancy from the backend
- Update scripts for running tests in package.json and remove the unused scripts
- Update travis.yml to run the new test scripts
* Use `production` docker images for cypress tests. As one of our contributors
pointed out: It is bad practice to end-to-end test sth. else than the actual
production images.
* Have a dedicated `docker-compose.travis-integration.yml` to test
backend integration tests. The backend *needs* a database when doing
integration tests. So there is no way around using docker-compose. But
we could stop using the `build-and-test` stage when we do cypress tests.
* Remove a couple of unused ports and DRY `docker-compose.override.yml`
* Build and tag all images first and then run `docker-compose .. up` - I
hope this will not rebuild the image.
* Reduce docker image size
This commit takes all backend changes for signup and invite feature. I
was working on these features and removed the generated mutations for
type user along the way.
@Mastercuber the justification for simply disabling the tests is that
the entire implemntation for the follow activities is wrong. It's still
using the `AddUserFollowedBy` auto-generated mutation. The mutation that
is actually used when you do a follow or unfollow are called `follow`
and `unfollow` - these are custom mutations implemented by ourselves.
So the proper fix for these tests would be to refactor the entire
ActivityPub implementation. Since there is a pending PR already I
decided not to go down the rabbit hole and simply tag the failing
sceario as "work-in-progress" (@wip).
I find it annoying to wait for code coverage tools to complete (~3
seconds) and especially to scroll up for every test run. So, this should
run coverage only on our build server *or* if you add `--coverage` on
the command line.
This commit should setup kubectl in a way that it downloads a recent
`kubeconfig` from Digitial Ocean with `doctl`. Thus, deployments will
not fail after a kubeconfig has expired.
Since it seems to be the recommended way to install `doctl` through
[Snap](https://snapcraft.io/). I decided to install everything else
through snap too, including chrome and docker.
This
* removes unnecessary backend server on :4001 (there is already one
running at :4000)
* allows to run `yarn run cypress:setup` independent of backend servers