Skip to content

Commit

Permalink
Merge branch 'develop' of github.com:Open-Earth-Foundation/CityCataly…
Browse files Browse the repository at this point in the history
…st into develop
  • Loading branch information
evanp committed Jun 10, 2024
2 parents 3e22869 + 09501df commit 7ace3c4
Show file tree
Hide file tree
Showing 62 changed files with 60,574 additions and 5,278 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -149,3 +149,6 @@ global-api/importer/mendoza_arg/data/**
global-api/importer/osm/cache/**
global-api/importer/osm/data/**
global-api/data/**

#Python virtual env
global-api/env
13 changes: 13 additions & 0 deletions app/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,10 +76,23 @@ The environment variables `NEXTAUTH_SECRET` and `NEXTAUTH_URL` are required for

### Development



To run the app in development mode, run:

```bash
cd CityCatalyst/app
cp env.example .env

## set up your database credentials in .env file

npm run db:migrate

npm run db:seed

## set up login in credentials
npm run create-admin

npm run dev
```

Expand Down
2 changes: 2 additions & 0 deletions app/env.example
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,5 @@ CHAT_PROVIDER=huggingface
ADMIN_EMAILS="[email protected]"
ADMIN_NAMES="John doe"
NEXT_PUBLIC_OPENCLIMATE_API_URL="https://openclimate.openearth.dev"
[email protected]
DEFAULT_ADMIN_PASSWORD=password
132 changes: 132 additions & 0 deletions app/migrations/20240506114511-inventory-v2.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
"use strict";

/** @type {import('sequelize-cli').Migration} */
module.exports = {
async up(queryInterface, Sequelize) {
return queryInterface.sequelize.transaction(async (transaction) => {
// Add table ActivityValue and connect to InventoryValue
await queryInterface.sequelize.query(
`CREATE TABLE "ActivityValue" (
"id" uuid UNIQUE PRIMARY KEY NOT NULL,
"activity_data" text,
"inventory_value_id" uuid,
"datasource_id" uuid,
"metadata" jsonb,
"created" timestamp,
"last_updated" timestamp
);`,
{ transaction },
);
await queryInterface.addConstraint("ActivityValue", {
type: "foreign key",
name: "FK_ActivityValue_inventory_value_id",
fields: ["inventory_value_id"],
references: { table: "InventoryValue", field: "id" },
onDelete: "CASCADE",
onUpdate: "CASCADE",
transaction,
});
await queryInterface.addConstraint("ActivityValue", {
type: "foreign key",
name: "FK_ActivityValue_datasource_id",
fields: ["datasource_id"],
references: { table: "DataSource", field: "datasource_id" },
onDelete: "SET NULL",
onUpdate: "SET NULL",
transaction,
});

await queryInterface.addColumn(
"GasValue",
"activity_value_id",
Sequelize.UUID,
{
transaction,
},
);
await queryInterface.addConstraint("GasValue", {
type: "foreign key",
name: "FK_GasValue_activity_value_id",
fields: ["activity_value_id"],
references: { table: "ActivityValue", field: "id" },
onDelete: "CASCADE",
onUpdate: "CASCADE",
transaction,
});

// new columns for EmissionsFactor
await queryInterface.addColumn(
"EmissionsFactor",
"metadata",
Sequelize.JSONB,
{ transaction },
);
await queryInterface.addColumn(
"EmissionsFactor",
"formula_name",
Sequelize.STRING,
{ transaction },
);
await queryInterface.addColumn(
"EmissionsFactor",
"methodology_id",
Sequelize.UUID,
{ transaction },
);
await queryInterface.addConstraint("EmissionsFactor", {
type: "foreign key",
name: "FK_EmissionsFactor_methodology_id",
fields: ["methodology_id"],
references: { table: "Methodology", field: "methodology_id" },
onDelete: "SET NULL",
onUpdate: "SET NULL",
transaction,
});
});
},

async down(queryInterface) {
await queryInterface.sequelize.transaction(async (transaction) => {
// EmissionsFactor
await queryInterface.removeConstraint(
"EmissionsFactor",
"FK_EmissionsFactor_methodology_id",
{ transaction },
);
await queryInterface.removeColumn("EmissionsFactor", "reference", {
transaction,
});
await queryInterface.removeColumn("EmissionsFactor", "year", {
transaction,
});
await queryInterface.removeColumn("EmissionsFactor", "region", {
transaction,
});
await queryInterface.removeColumn("EmissionsFactor", "methodology_id", {
transaction,
});
await queryInterface.removeColumn("EmissionsFactor", "formula_name", {
transaction,
});
await queryInterface.removeColumn("EmissionsFactor", "metadata", {
transaction,
});

// ActivityValue
await queryInterface.removeConstraint(
"GasValue",
"FK_GasValue_activity_value_id",
{ transaction },
);
await queryInterface.removeColumn("GasValue", "activity_value_id", {
transaction,
});
await queryInterface.removeConstraint(
"ActivityValue",
"FK_ActivityValue_inventory_value_id",
{ transaction },
);
await queryInterface.dropTable("ActivityValue");
});
},
};
Loading

0 comments on commit 7ace3c4

Please sign in to comment.