|
|
vor 1 Woche | |
|---|---|---|
| bin | vor 2 Wochen | |
| controllers | vor 1 Woche | |
| libs | vor 2 Monaten | |
| middlewares | vor 3 Wochen | |
| migrations | vor 1 Woche | |
| models | vor 1 Woche | |
| public | vor 1 Woche | |
| services | vor 1 Woche | |
| test | vor 2 Monaten | |
| .env.example | vor 1 Woche | |
| .gitignore | vor 1 Monat | |
| README.md | vor 1 Woche | |
| composer.json | vor 2 Monaten | |
| composer.lock | vor 2 Monaten | |
| package.json | vor 2 Monaten | |
| php-api_1.0.0_all.deb | vor 5 Monaten | |
| routes.md | vor 4 Wochen | |
| test_bash_executor.php | vor 2 Monaten |
pdo_pgsql)psql disponível no PATHcomposer install
Copie o arquivo de exemplo:
cp .env.example .env
Preencha no .env (mínimo para banco):
DB_HOST=
DB_PORT=
DB_NAME=
DB_USER=
DB_PASSWORD=
Você pode criar manualmente o usuário e o banco antes de rodar o bin/setup.
Entre no psql com um usuário admin do Postgres (ex: postgres):
psql -U postgres
Crie o usuário e o banco (ajuste nomes/senha conforme seu .env):
CREATE USER app_user WITH PASSWORD 'app_password';
CREATE DATABASE app_db OWNER app_user;
GRANT ALL PRIVILEGES ON DATABASE app_db TO app_user;
Saia:
\q
Se você quiser remover completamente o banco (isso apaga todos os dados), use DROP DATABASE.
Entre no psql com um usuário admin (ex: postgres):
psql -U postgres
Se não houver conexões ativas no banco:
DROP DATABASE app_db;
Se o Postgres recusar por haver conexões ativas:
Postgres 13+ (recomendado):
DROP DATABASE app_db WITH (FORCE);
Alternativa (encerrar conexões e depois dropar):
SELECT pg_terminate_backend(pid)
FROM pg_stat_activity
WHERE datname = 'app_db'
AND pid <> pg_backend_pid();
DROP DATABASE app_db;
Observação: se preferir, o bin/setup também consegue criar o banco quando ele não existe, desde que o usuário usado tenha permissão de CREATE DATABASE (por padrão ele usa DB_USER como “superuser”, a não ser que você defina DB_SUPERUSER, DB_SUPERUSER_PASSWORD e DB_SUPERUSER_DB).
bin/setup)O script bin/setup:
DROP DATABASE).migrations_run..sql em migrations/.
migrations_v1.sql é executada primeiro (se existir).Execute:
chmod +x bin/setup
./bin/setup
Existem dois entrypoints:
public/index.php (API)public/index_webhook.php (webhooks)Você deve rodar cada um em uma porta diferente.
Exemplo (2 terminais):
Terminal 1 (API):
PORT=8000 php public/index.php
Terminal 2 (Webhooks):
PORT=8001 php public/index_webhook.php
Observação: o FrameworkX usa a variável de ambiente PORT para definir a porta do servidor.
Para rodar endpoints/funcionalidades relacionadas à B3, é necessário ter estes arquivos na raiz do projeto:
319245319-320109623_PROD.cer319245319-320109623_PROD.key