Commit Graph

52 Commits

Author SHA1 Message Date
Beverly Nguyen
f484a9c432 case study added 2025-04-23 11:49:26 -07:00
Beverly Nguyen
caed2ad5d6 updating asset folder 2025-04-04 11:27:20 -07:00
Beverly Nguyen
2bec392a59 asap pdf 2025-03-05 10:53:08 -08:00
Beverly Nguyen
d8ae3f3056 pdf added 2024-10-25 10:59:55 -07:00
alexjanousekGSA
df22530fa4 Remove BackstopJS generated folders from Git tracking 2024-09-23 12:03:21 -04:00
alexjanousekGSA
93609417c1 Added requirements file 2024-07-18 15:17:12 -06:00
Cliff Hill
d96a05f58a Adding .node-version to .gitignore.
Signed-off-by: Cliff Hill <clifford.hill@gsa.gov>
2023-12-20 14:53:01 -05:00
Carlo Costino
40de352f9e Update README with new instructions and improve setup
This changeset updates the README.md file with a set of entirely new instructions. These updates are intended to improve clarity, simplify steps, and reduce confusion and environment-setup gotchas that folks have run into previously and we have learned from. A couple of other changes are also included:

- Minor adjustments to the Makefile to improve make bootstrap
- Updates to the sample.env file to include previously missing required environment variables and/or information
- Additional support for Python virtual environments
- Removes tracking of the .python-version file used by pyenv

Signed-off-by: Carlo Costino <carlo.costino@gsa.gov>
2023-11-22 14:05:20 -05:00
Carlo Costino
d79e15c2a1 Clean up state of E2E tests
This changeset takes care of leaving E2E tests in a clean state so that
we can revisit the work later.  The efforts to add authentication
support did not pan out, so we will go a different route in the near
future.

Signed-off-by: Carlo Costino <carlo.costino@gsa.gov>
2023-08-24 15:31:21 -04:00
Andrew Shumway
575c2b7d75 Notify 473: add code coverage for jest (#488) 2023-05-02 16:38:28 -04:00
Andrew Shumway
948ee68193 Added code coverage test to pipfile/makefile/workflow (#472)
Co-authored-by: stvnrlly <steven.reilly@gsa.gov>
2023-04-28 11:17:02 -04:00
stvnrlly
fdc10b3ec4 fix .gitignore comment, remove app/version.py 2022-12-06 11:29:07 -05:00
stvnrlly
7613cd2747 remove static and re-add to .gitignore 2022-12-06 10:20:22 -05:00
stvnrlly
f16b5dd1c4 remove broadcast-related code 2022-10-04 03:04:13 +00:00
Ryan Ahearn
43bd8c5fe8 Add basic terraform bootstrap and staging environments 2022-09-13 14:15:02 -04:00
jimmoffet
f11b37f30a commit uk build-time vendor info and freeze it 2022-08-03 15:06:18 -07:00
Jim Moffet
f8f87e0596 ignore local log file 2022-07-01 11:24:51 -07:00
Jim Moffet
8fa0af523b delete local log file 2022-07-01 11:24:25 -07:00
Jim Moffet
1c5d432427 clean up and turn off auth for test env 2022-07-01 11:19:58 -07:00
Christa Hartsock
6d3f67fb9b Initial config for local deployments
Not yet working properly on cloud.gov
2022-06-23 15:53:23 -07:00
Jim Moffet
2b727e13b4 local dev upgrades 2022-06-13 14:26:46 -07:00
Richard Baker
5fa324a680 Add package-lock.json file using Node 16 LTS & NPM 8
Creates a "v2" package-lock.json file for consistent dependency
installation.

Lock file created using `npm i --package-lock-only`

Signed-off-by: Richard Baker <richard.baker@digital.cabinet-office.gov.uk>
2022-04-05 11:36:33 +01:00
Chris Hill-Scott
8ea3f0141c Give estimates of the number of phones in a broadcast area
We need to give people a better feel for the consequences of
broadcasting an alert. We’ve seen in research that some users will
assume it is subscription based, or opt-in, rather than going to every
phone in the area.

I reckon that the most effective way to communicate this is to put some
numbers next to the areas, to give people an idea of how many people
will get alerted.

We can estimate how many phones are in an area by:
- taking the population of all electoral wards in that area
- multiplying it by the percentage of people who own an internet
  connected phone[1]

The Office for National Statistics publish both these datasets.

The number of people who own an intenet connected phone varies a lot by
age. Since the population data for each ward is broken down by age we
can factor this in. Simplified, the calculation looks like this:
- take the _Abbey_ ward of _Barking and Dagenham_
- in this ward there are 26 people aged 80
- 40% of people over 65 have an internet-connected phone
- therefore 10 of these 80-year-olds would be likely to receive a
  broadcast
- (repeat for all other ages)

These numbers won’t be exact, but should be enough to give people a feel
for the severity of what they’re about to do. We can see if they acheive
this aim in user research.

1. This is a proxy for the number of people who are likely to have a 4G
   capable phone, because only 4G capable phones will be receiving
   broadcasts to begin with
2020-09-14 16:26:09 +01:00
Leo Hemsted
1ec45a5527 add local authority mapping file
maps lower tier local authorities to upper tier local authorities -
translation for humans: Maps districts to the counties that they are in.
For counties, a row looks like:
`255,E07000105,Ashford,E10000016,Kent`
(E07000105=Ashford, E10000016=Kent)

For unitary districts it maps that district to itself, eg:
`49,E06000052,Cornwall,E06000052,Cornwall`
where both codes are the same
2020-09-09 14:29:02 +01:00
David McDonald
41b5b60cec Update .gitignore
Make nice words

Co-authored-by: Chris Hill-Scott <me@quis.cc>
2020-08-14 10:22:39 +01:00
David McDonald
48fee71c2b Reduce risk of commiting files with personal information in 2020-08-12 15:38:01 +01:00
Tom Byers
48bfa7e47f Remove non-existent path from .gitignore 2020-02-21 17:27:32 +00:00
Tom Byers
c1de4cc51b Explain .gitignore & .cfignore differences 2019-12-02 17:19:08 +00:00
Tom Byers
ccbad51ebd Move app/.gitignore entries to .gitignore
`app/.gitignore` existed to list anything that we
wanted ignored from the repository but not listed
in `.cfignore` (which just symlinked the
`.gitinore` at the root).

Now `.gitignore` and `.cfignore` are split, this
is no longer necessary.
2019-12-02 17:00:55 +00:00
Tom Byers
c3d055a140 Add templates vendor folder to gitignore & delete
It was added by mistake in this commit:

3c208a8b11
2019-12-02 15:03:56 +00:00
Leo Hemsted
1d67c82f0f utils bump
also dont use splitlines on csv data, there might be quoted newlines we dont want to split on
2019-08-02 14:34:05 +01:00
Chris Hill-Scott
7d951ad1f3 Don’t version control Pytest cache
Pytest moved its cache from `./.cache` (which is in our `.gitignore`) to
`./.pytest_cache` (which isn’t).

It’s annoying having to be careful not to commit it all the time, so
this commit makes it ignored.

See https://github.com/pytest-dev/pytest/issues/3286 for more context.
2018-09-03 09:33:04 +01:00
Chris Hill-Scott
c11a15338c Remove package-lock.json
I don’t think we’re getting any benefit from it. Especially since we’re
not running any Node code in production, but just using it to build the
frontend.

The downside is we keep getting these massive diffs which means we don’t
get an accurate line count on pull requests.

Followed instructions here:
https://codeburst.io/disabling-package-lock-json-6be662f5b97d
2017-09-27 12:15:33 +01:00
Imdad Ahad
85a59746a0 Revert d06a72 and 6b9b1be but keep the wheel-removal changes 2017-07-21 11:21:17 +01:00
Imdad Ahad
d06a72224e Don't create wheels for dependencies but store offline:
Previously we used AWS which meant that we could create wheels
from our requirements and then install them offline which made
deployments quicker.

We're no longer using AWS so let's remove that.

Although CloudFoundry supports installing dependencies in an offline
environment as documented here:
http://docs.cloudfoundry.org/buildpacks/python/#vendoring

To achieve this we create a vendor/ directory which will contain
the packages to install. This uses --no-index and --find-links so will
not resolve for any dependencies from pypi. For this reason there is
assumed confidence that the vendor/ directory will contain all
of the dependencies we need.
2017-07-20 14:17:10 +01:00
bandesz
d3b7d1aeee Remove Docker commands for CF, clean up artifact creation 2017-02-28 12:31:56 +00:00
bandesz
10950bb8a6 Run on Paas 2017-01-17 11:44:42 +00:00
bandesz
82d6154a5f Add wheelhouse to .gitignore 2016-11-25 16:53:51 +00:00
Leo Hemsted
008c88e42c add junit xml reporting to pytest 2016-08-31 15:15:28 +01:00
bandesz
26ff449b77 Create Docker build image, build project with Docker 2016-08-22 17:25:05 +01:00
Rebecca Law
7d64b77e5d Use password_changed_at field from User object rather than use a hard coded date.
https://www.pivotaltracker.com/story/show/122205615
2016-06-27 17:03:15 +01:00
Adam Shimali
3e167c69f2 Clean up config a bit. Get values for config from environment.
Removed some old redundant config.
2016-03-23 15:07:04 +00:00
Chris Hill-Scott
5ebeec08ae Use a Node-based tools for handling assets
…or how to move a bunch of things from a bunch of different places into
`app/static`.

There are three main reasons not to use Flask Assets:
- It had some strange behaviour like only
- It was based on Ruby SASS, which is slower to get new features than libsass,
  and meant depending on Ruby, and having the SASS Gem globally installed—so
  you’re already out of being a ‘pure’ Python app
- Martyn and I have experience of doing it this way on Marketplace, and we’ve
  ironed out the initial rough patches

The specific technologies this introduces, all of which are Node-based:
- Gulp – like a Makefile written in Javascript
- NPM – package management, used for managing Gulp and its related dependencies
- Bower – also package management, and the only way I can think to have
  GOV.UK template as a proper dependency

…speaking of which, GOV.UK template is now a dependency. This means it can’t be
modified at all (eg to add a global `#content` wrapper), so every page now
inherits from a template that has this wrapper. But it also means that we have a
clean upgrade path when the template is modified.

Everything else (toolkit, elements) I’ve kept as submodules but moved them to a
more logical place (`app/assets` not `app/assets/stylesheets`, because they
contain more than just SASS/CSS).
2016-01-05 13:12:35 +00:00
Chris Heathcote
ec020a42f4 Initial nav & implementation on dashboard 2015-12-14 16:37:15 +00:00
Chris Hill-Scott
73ccea4d1f Add GOV.UK Elements as a submodule
Since GOV.UK Elements is versionned now it makes sense to bring it in as a
dependency. This enforces a separation between what generic stuff we’re using
from Elements and what is specific to our app.

The benefit is that when the generic stuff changes it will be easy to bring
those changes in.

This commit also bumps GOV.UK frontend toolkit to the latest version (v4.5.0).
2015-12-11 09:49:31 +00:00
Chris Heathcote
701ce482d4 Create base forms for registration and sign in
Created routes and forms for registration, sign in, and registration
from an invite.
Also tidied up assets folder, removed copy of fronted toolkit.
2015-11-26 10:18:37 +00:00
Rebecca Law
abe1d8ae17 108536234: created users and roles data and domain model.
You will need to run the /scripts/bootstrap.sh to create the database for test and the app.
2015-11-25 15:29:12 +00:00
Rebecca Law
b83d2f0d8a Introduce config file for application 2015-11-24 09:40:14 +00:00
Rebecca Law
a9fe2e6bb7 Add govuk-template-flask-skeleton 2015-11-23 13:50:37 +00:00
Rebecca Law
94dadfac92 gitignore .idea 2015-11-18 16:21:37 +00:00