aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
blob: d603eac80a298acce580874355ce3f628dcd60ff (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# Installasjonsveiledning

Denne webapplikasjonen er laget ved hjelp av [RefineryCMS][1] som igjen er bygget på [Ruby on Rails][2]. Litt kjenskap til Ruby on Rails er alltids greit å ha, men for mange oppgaver kan man fint klare seg uten.

## Oppsett av utviklermiljø

Vi bruker [Vagrant] for å gjøre det enkelt å sette opp et utviklermiljø som er mest mulig likt det som vi finner på serveren vi kjører på.

Du trenger:

* [VirtualBox]
* [Vagrant]
* [Git]
* En teksteditor.

Sørg for at disse programmene er installert på din maskin.

### Kopier koden:

    % git clone https://code.volse.no/hmnoweb.git

### Last ned og start utviklermiljøet

    % cd hmnoweb
    % vagrant up

Dette vil ta noe tid første gang. Det laster ned en virtuell maskin og installerer alt du trenger på den. Når denne prosessen er ferdig kan du åpne en terminal for den virtuelle maskinen:

    % vagrant ssh

Du vil finne kildekoden til programmet i `/vagrant`-katalogen. Du kan gå dit og sette opp selve applikasjonen slik:

    % cd /vagrant
    % script/setup

Du kan så starte serveren slik:

    % bundle exec rails server

Du skal nå få opp en rimelig tom utgave av heavymetal.no dersom du går til `http://localhost:3000` i nettleseren din.

### Logge inn og administrere sidene

Du logger inn og kan administrere din lokale kopi av heavymetal.no ved å gå til `http://localhost:3000/refinery`. Første gang må du opprette en bruker som vil være administrator. Dette er kun din lokale testinstallasjon, så velg noe enkelt, f.eks admin/test1234 som brukernavn/passord.

### Synkronisere endringer

Når du har gjort endringer i koden, må du synkronisere disse med vagrant-miljøet. Dette gjør du slik:

    % vagrant rsync

Evt kan du kjøre `vagrant rsync-auto`, som vil synkronisere filene så snart de blir endret. Kjører du denne kommandoen i en egen terminal skal filene synkroniseres når du lagrer dem i teksteditoren din. Det gjør det enkelt å teste ut endringer ganske kjapt.

De fleste endringer krever ikke at du stopper og starter serveren på nytt. Dersom du gjør endringer i konfigirasjonen av applikasjonen (nærmest hva som helst under `./config`-katalogen i kodetreet) så må du starte serveren på nytt. Det gjør du enklest ved å gå til terminalen hvor du har vagrant-miljøet ditt kjørende, trykk `CTRL-C` for å stoppe serveren, og så kjør `bundle exec rails server` på nytt. Vanligvis finner du linjen raskest ved å trykke pil opp på tastaturet.

## Bidrag/Kodehjelp

Send hjerne feilrapporter, rettelser eller andre henvendelser angående koden til hmno-dev@volse.anduin.net. Dersom du ønsker å bli med på den videre utviklingen av koden kan du [melde deg på listen her](https://volse.anduin.net/mailman/listinfo/hmno-dev).

## LISENS

Copyright (C) 2018  Harald Eilertsen <haraldei@anduin.net>

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License version 3
as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.


[1]: https://www.refinerycms.com
[2]: https://www.rubyonrails.org
[Vagrant]: https://www.vagrantup.com/
[VirtualBox]: https://www.virtualbox.org/
[Git]: https://git-scm.com/